2010-02-04 49 views
5

我有一個控制器,它根據登錄的當前用戶獲取數據。我想分配一個這樣的局部變量:在控制器的構造函數中獲取用戶名?

 public UsergroupsCustAdminController() 
    { 

     User u = _us.GetUsers(HttpContext.User.Identity.Name).First(); 

     this._customerID = u.CustomerID; 
    } 

不知何故,我無法獲得當前用戶登錄的值。應該如何我修好了嗎?我需要在我的控制器類中的許多地方使用「CustomerID」。

/M

回答

7

您試圖過早地勾住。建議你重寫OnActionExecuting,並把這個代碼在那裏,就像這樣:

protected override void OnActionExecuting(ActionExecutingContext filterContext) 
{ 
    User u = _us.GetUsers(HttpContext.User.Identity.Name).First(); 
    this._customerID = u.CustomerID; 
} 
+0

你有一些例子就說明我如何可以傳遞變量? – 2010-02-04 08:31:58

+3

爲什麼程序員不能(正如我假設的那樣,他們相當聰明,受過良好教育)拼寫正確嗎?還有那迷惑基本錯誤氾濫「他們的」,「有」與「他們」,它真的讓我吃驚的是有人能寫出相當複雜的程序,但是當涉及到基本的英語失敗。 (我的道歉,如果英語不是你的第一語言) – belugabob 2010-02-04 08:32:27

+3

@belugabob - 絕對正確的,我是一個堅持己見的這個自己。不知道如何通過(如果你檢查我的編輯列表,你會看到許多拼寫,語法和標點符號修復)。 +1爲了趕上我。 :) – 2010-02-04 08:38:01

相關問題