2011-07-12 48 views
0
<div class="editor-label"> 
     @Html.LabelFor(model => model.UserName) 
    </div> 
    <div class="editor-field"> 
     @Html.EditorFor(model => model.AccountModel.UserName) 
     @Html.ValidationMessageFor(model => model.AccountModel.UserName) 
    </div> 

在此頁面加載(查看加載),我希望用戶名文本框的值可以從標準aspnet成員身份信息自動填充。如何將這個默認值分配給文本框。請幫忙。謝謝Razor語法中的文本框默認值

回答

4

在您的控制器操作中,您可以填充視圖模型並在其上設置相應的屬性。因此,假如你的看法是強類型到MyViewModel

[Authorize] 
public ActionResult Foo() 
{ 
    var model = new MyViewModel 
    { 
     UserName = User.Identity.Name 
    }; 
    return View(model); 
} 

,並在視圖簡單:

<div class="editor-label"> 
    @Html.LabelFor(model => model.UserName) 
</div> 
<div class="editor-field"> 
    @Html.EditorFor(model => model.UserName) 
    @Html.ValidationMessageFor(model => model.UserName) 
</div> 

如果您的視圖模型具有一定的AccountModel財產,你將有實例,並在控制器中填充它行動。在我的例子中,我已經放平了視圖模型。