請幫助我!Asp.Net Web Api2 + SignalR
我有一些郵件項目。我需要使用SignalR。 現在我只有這在我啓動
app.MapSignalR();
我有集線器
[HubName("MailHub")]
public class MailHub<THub>: Hub
where THub : IHub
{
public void SendMessage (Mail message)
{
Clients.Caller.addMessage(message);
}
}
我有MailController
[Authorize]
[RoutePrefix("api/mail")]
public class MailController : ApiController
{
private readonly MailStore<Mail> _mail;
public MailController()
{
_mail = new MailStore<Mail>(MongoUtil<Mail>.GetDefaultConnectionString());
}
[HttpPost]
[Route("send")]
public async Task<IHttpActionResult> SendMessage(Mail message)
{
var hubContext = GlobalHost.ConnectionManager.GetHubContext<MailHub<IHub>>();
if (hubContext != null)
{
if (!ModelState.IsValid)
return BadRequest(ModelState);
var currentUser = User.Identity.Name;
var sendMessage = new Mail
{
Subject = message.Subject,
Sender = message.Sender,
Receiver = message.Receiver,
Message = message.Message
};
await _mail.CreateAsync(sendMessage);
// hubContext.Clients.Clien....;
/* if (!result.Succeeded)
{
return BadRequest(ModelState);
}
*/
return Ok();
}
return BadRequest();
}
}
以及我如何在這個控制器使用SignalR? 我需要某些用戶使用SignalR向其他用戶發送電子郵件。
你的jquary代碼在哪裏? – Hadee
我的工作是製作後端。 Jquary代碼將使另一個開發。 –