シナリオ:管理者によって新しいユーザーを作成するビューを追加しようとしています。アプリはフォーム認証です。ログインしているユーザー(管理者)がいます。パスワードForがビューに追加されると、ビューはログインしたユーザーにフィールドを自動的に入力します。 asp.net-mvc:ビューにpasswordForを追加すると、自分のフィールドに自動的に値が設定されます。
コントローラコード:public ActionResult Create()
{
var userViewModel = new UserViewModel();
return View(userViewModel);
}
ビューコード:
@model MVC4.Models.UserViewModel
@{
ViewBag.Title = "Create";
}
@using (Html.BeginForm())
{
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
<fieldset>
<legend>UserVireModelcs</legend>
<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>
<div class="editor-label">
@Html.LabelFor(model => model.Password)
</div>
<div class="editor-field">
@Html.PasswordFor(model => model.Password)
@Html.ValidationMessageFor(model => model.Password)
</div>
<p>
<input type="submit" value="Create" />
</p>
</fieldset>
}
モデルをビューに送信しない場合はどうなりますか?とにかく空のモデルを送るのは奇妙なことです。 – David
はい、それは私が空のものを送信しようとした理由ですが、それはエーテル的に起こります。 – petric
ログインフォームをあらかじめ入力するブラウザではないのですか? 「ユーザー名」と「パスワード」フィールドは、ブラウザによってログインプロンプトとして解釈される可能性があります。 – David