0
を持っている...渡されたモデルでは、私は非常に混乱の問題を持っている間違ったID
私は私が一緒にリンクを持つすべてのasp.netのIDユーザーをリストそのコントローラ上の「がUserController」と呼ばれるコントローラを持っています各ユーザーを編集します。すべてのユーザーを一覧表示するビューと、編集用に選択したユーザーの詳細を表示するビューも表示されます。しかし、更新ビューは機能しません。渡されたIDが、データベース内のどのユーザーとも一致していないことを確認すると、更新メソッドに渡されたモデルは、想定されていたモデルではありません。なぜかわかりません。
コントローラ
public ActionResult All()
{
var allUsers = _context.Users.ToList();
return View(allUsers);
}
public ActionResult Edit(string userId)
{
var user = _userManager.FindById(userId);
return View(user);
}
public ActionResult Update(ApplicationUser model)
{
if (ModelState.IsValid)
{
var user = _userManager.FindById(model.Id);
user.IsActive = model.IsActive;
_userManager.Update(model);
}
return View();
}
編集ビュー
@using (Html.BeginForm("Update", "Users", FormMethod.Post, new { name = "form_section_search_id_mls" }))
{
<div class="row">
<div class="col-lg-12">
<div class="row">
<div class="col-lg-12">
<h3 class="title_contanier">Aktiv: </h3>
<div class="where-location">
@Html.CheckBoxFor(model => model.IsActive)
</div>
</div>
</div>
<!-- Begin .row -->
<div class="row">
<div class="col-lg-12">
<button type="submit" class="btn_submit_quick_search btn_submit_search pull-right" id="submitBtn" name="btn_submit_section_search_id_mls">Update user</button>
</div>
</div>
<!-- End .row -->
</div>
</div>
}
あなたは、更新メソッドは動作しませんが、まだ編集ビューを投稿していると言っています。更新ビューはどうですか?また、 'user'を返すつもりはありませんか?したがって、 'return View(user)'を返します。 –
まだ更新ビューを作成していません。編集ビューのページでは、更新メソッドに投稿して、ユーザーに一致しないIDを取得する場所を取得します....私は、渡して更新ビューを作成する前に、渡されたモデルが正しいことを確認したかっただけです。しかし、私はそのビューを作成していない場合でも、渡されたモデルは正しいはずですか? – MTplus