对象引用未设置为SignalR asp.net MVC身份框架中的对象实例

时间:2016-05-04 08:20:01

标签: asp.net asp.net-mvc signalr asp.net-identity signalr-hub

这是我的集线器类的代码

public class ChatHub : Hub
  { 
    [Authorize]

    public void Send(string name, string message )
    {

        string uid = Context.Request.User.Identity.GetUserName();
        Debug.WriteLine(uid);

       // Debug.WriteLine();

        Clients.All.addNewMessageToPage(uid, message);
    }
 }

执行此行字符串时uid = Context.Request.User.Identity.GetUserName(); 它给我这个错误"对象引用未设置为对象的实例"。 我无法获取登录用户的用户名。如何从connectionId或其他任何方式获取登录用户信息?

1 个答案:

答案 0 :(得分:1)

在启动时检查配置身份验证后是否映射signalR:

public void Configuration(IAppBuilder app)
{
  var hubConfiguration = new HubConfiguration { EnableDetailedErrors = true };
  ConfigureAuth(app);
  app.MapSignalR(hubConfiguration);

}