首页 新闻 搜索 专区 学院

SignalR 如何设置Context.User.Identity.Name

0
悬赏园豆:100 [已关闭问题] 关闭于 2014-10-15 16:51

用SignalR进行交互时,重新打开一个新的页码会出发 OnDisconnected这个事件。触发事件时我想获取登陆用户名。网上搜了好多是用

 Context.User.Identity.Name;这个来获取登陆的用户名。但是我调试的发现这个值为空。

这个应该在哪里取设置呢?

public override System.Threading.Tasks.Task OnDisconnected()
{
var us = Context.User.Identity.Name;//取的为空

return base.OnDisconnected();
}



HJ_pror的主页 HJ_pror | 初学一级 | 园豆:69
提问于:2014-07-29 13:34
< >
分享
所有回答(2)
0

启用 FormsAuthentication。

Launcher | 园豆:45045 (高人七级) | 2014-07-29 13:37

  FormsAuthentication.SetAuthCookie(username, true)//是这段代码吗?我加了 看还是空

 

支持(0) 反对(0) HJ_pror | 园豆:69 (初学一级) | 2014-07-29 13:40

@HJ_pror: 你的网站启用认证了吗?

支持(0) 反对(0) Launcher | 园豆:45045 (高人七级) | 2014-07-29 13:43

@Launcher: 恩 再web.config文件都配值了的

<authentication mode="Forms">
<forms loginUrl="~/Account/LogOn" timeout="2880" />
</authentication>

支持(0) 反对(0) HJ_pror | 园豆:69 (初学一级) | 2014-07-29 14:00

@HJ_pror: 你看看你的 Context.User.Identity 的类型是啥?

支持(0) 反对(0) Launcher | 园豆:45045 (高人七级) | 2014-07-29 14:03
-2

$(function () {

setScreen(true);

// Declare a proxy to reference the hub.
var chatHub = $.connection.chatHub;

registerClientMethods(chatHub);

// Start Hub
$.connection.hub.start().done(function () {

chatHub.server.connect(@User.Identity.Name);
@{Session["uid"] = User.Identity.Name;}
registerEvents(chatHub)

});

});

要在前台页面写

刘宏玺 | 园豆:14020 (专家六级) | 2014-07-29 21:58
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册