11
我正在使用SignalR處理來自我的MVC3應用程序的客戶端的點擊。如何從控制器外部訪問已登錄的用戶?
每次用戶點擊某物時,我都需要驗證登錄的用戶。
如果這是一個MVC3控制器內,我會去:
if (User.Identity.IsAuthenticated)
{
string username = User.Identity.Name;
//My code here.
}
但是,此代碼執行不是一個控制器類中。
基本上,我如何從控制器外部訪問登錄的用戶名?
我試過了,使用HttpContext.Current,它的工作原理。你描述的一些陷阱是什麼?上下文將如何爲空?爲什麼你推薦我從不使用這個? –
@Sergio Tapia,如果您正在執行的代碼是在某個後臺線程中,則上下文將爲空。你沒有回答我的問題:你在哪裏試圖訪問這些信息? –
啊,我明白你在說什麼,Context是Hub類的一部分。你是這個意思嗎?我應該使用'Context'而不是'HttpContext'? –