我是Asp.net MVC和Razor的新手。我想使用Razor從數據庫顯示文本字段值。 我在控制器下面的代碼從Db獲取值並設置爲@ Html.TextBoxFor()Razor Asp.net
public ActionResult edit(int id)
{
using (var context = new pmcontext())
{
var user_1 = from u in context.Users
where u.UserID==11
select u;
ViewBag.users = user_1.ToList();
return View();
}
}
鑑於我有
@model pm.Models.User
@{
ViewBag.Title = "edit";
}
<h2>Update User</h2>
@foreach (var user in ViewBag.Users)
{
<p><b> User Full Name: @user.fullname </b></p>
using (Html.BeginForm("Update", "Users", FormMethod.Post))
{
<div class="row">
<div class="col-sm-6 col-xs-6">Name </div>
<div class="col-sm-6 col-xs-6">@Html.TextBoxFor(model => model.fullname, new { Class = "form-control", value=user.fullname }) </div>
</div>
}
}
我也曾嘗試以下的視圖來顯示文本框中user.fullname價值,但未能如願。
@Html.TextBoxFor(model => model.fullname, new { Class = "form-control", value="@user.fullname" })
在控制器中的代碼生成User'的'的集合,但在該視圖的模型需要一個單個'用戶'。它不清楚你真的想在視圖中展示什麼。我懷疑你想'返回查看(user_1.FirstOrDefault();'(並刪除'ViewBag'屬性) –