在我的 MVC 应用程序中,我根据 Model.Count 指定了两个条件以在 View 中显示值。
看法
@model IEnumerable<SampleECommerce.Models.DetailsModel>
@using (Html.BeginForm("Details", "Grid", new { UserID = Request.QueryString["UserID"], partnerid = Request.QueryString["Partnerid"] }, FormMethod.Post))
{
if (Model.Count() == 0)
{
@foreach (var item in Model)
{
<table>
<tr>
<td>
@Html.DisplayNameFor(model => model.FirstName)
<input id="FirstName" type="text" class="TextBoxBorder" name="FirstName" value="@item.FirstName" /> // When the Model count is zero, the label and textbox is not displayed.
</td>
</tr>
</table>
}
else
{
@foreach (var item in Model)
{
<table>
<tr>
<td>
@Html.DisplayNameFor(model => model.FirstName)
<input id="MFirstName" type="text" class="TextBoxBorder" name="FirstName" value="@item.FirstName" />
</td>
</tr>
</table>
}
控制器
public ActionResult Details()
{
string userid = Request.QueryString["UserID"];
string partnerid = Request.QueryString["Partnerid"];
con.Open();
SqlCommand cmd = new SqlCommand("select FirstName from Details where UserID = +userid+", con);
SqlDataReader dr = cmd.ExecuteReader();
List<DetailsModel> objmodel = new List<DetailsModel>();
while (dr.Read())
{
objmodel.Add(new DetailsModel()
{
FirstName = dr["First Name"].ToString(),
});
}
dr.Close();
return View(objmodel);
}
当 Model.Count 为零时,不显示标签和文本框。
当 model.count 基于用户 ID 为零时,我试图向文本框插入新值
我试图将文本框绑定到对Link
中指定的所有方式进行建模。
1. @Html.TextBoxFor(model => model.FirstName)
FirstName 中的错误说明“System.Collections.Generic.IEnumerable 找不到 FirstName 的定义或没有扩展方法”
2. @Html.TextBox(model=>model.FirstName)
“错误说明无法将 Lamba 表达式转换为字符串类型”
当 model.count 为零时如何将文本框值绑定并显示到模型。有什么建议么 ??