2011-10-06 46 views
1

我希望我沒有與我的許多問題bithering ...MVC3:在前端Dispalying用戶名,但控制器必須努力用戶ID

我創建的ASPNETDB.MDF數據庫用戶與ASP .net配置。

我有一個客戶端MVC,我要當一個客戶端創建,編輯或刪除,就必須dispaly是執行操作的用戶的user_name和last_user_name。這兩個屬性在客戶端模型中。我希望我的控制器只處理用戶的ID(PK),而不是他們的名字。我只知道如何讓控制器和用戶名一起工作。我如何確保使用id完成任何功能,但顯示是user_name?這是我在我的clientcontroller

[Authorize] 
    public ActionResult Create() 
    { 
     var model = new title 
     { 

      create_dt = DateTime.Now, 
      last_maint_dt = DateTime.Now, 
      row_version = 1, 
      status = "ACTIVE", 
      user_id = System.Web.HttpContext.Current.User.Identity.Name, 
      last_user_id = System.Web.HttpContext.Current.User.Identity.Name 

     }; 

     return View(model); 
    } 

回答

0

創建方法如果您使用的是默認ASP.NET成員資格提供您可以通過訪問System.Web.Security.Membership找到一個帳戶的用戶GUID。然後,您可以使用GetUser()方法並將其作爲參數傳遞給用戶名。

//Get Current User ID 
var user = System.Web.Security.Membership.GetUser(User.Identity.Name); 

if (user != null) 
{ 
    string id = user.ProviderUserKey.ToString(); 
} 

如果你有GUID,並希望用戶名

var user = System.Web.Security.Membership.GetUser(id); 
if (user != null) 
{ 
    string username = user.UserName; 
} 
+0

確定...那麼,如何分配,爲我的用戶名和我的SQL Server數據庫最近使用的用戶化子性質,這是字符串變量? – Cutie

+0

您是否問如何將用戶保存到數據庫?我不太確定,如果我理解你的問題。 – Eganr

+0

在上面的代碼,USER_ID和last_user_id是在客戶機模型的字符串的屬性。那麼,如何讓我的在ASPNETDB用戶的ID控制器的工作,但是當用戶創建一個客戶端,該視圖顯示用戶創建客戶端的用戶名?更多的我如何變換來顯示的用戶名中,當控制器正在與該用戶的唯一標識符(ID)的視圖? – Cutie

相關問題