C# ASP.NET mvc在LabelFor中显示整数
为什么显示的是C# ASP.NET mvc在LabelFor中显示整数,c#,asp.net,asp.net-mvc,asp.net-mvc-4,C#,Asp.net,Asp.net Mvc,Asp.net Mvc 4,为什么显示的是数据,而不是值100 public ActionResult Index() { ViewBag.id = 100; return View(); } Index.cshtml @model TestForm.Models.Data @{ ViewBag.Title = "Index"; } <h2>Index</h2> @using(@Html.BeginForm()) { @Html.LabelFor(mode
数据
,而不是值100
public ActionResult Index()
{
ViewBag.id = 100;
return View();
}
Index.cshtml
@model TestForm.Models.Data
@{
ViewBag.Title = "Index";
}
<h2>Index</h2>
@using(@Html.BeginForm())
{
@Html.LabelFor(model=>model.data,((int)@ViewBag.id))
}
@model TestForm.Models.Data
@{
ViewBag.Title=“Index”;
}
指数
@使用(@Html.BeginForm())
{
@LabelFor(model=>model.data,((int)@ViewBag.id))
}
如果要显示塞进可视包的100
,请删除“@”
查看包:
ViewBag.id = "100";
Html:
代替LabelFor,您始终可以执行以下操作:
<label>@Html.Raw(ViewBag.Id)</label>
@Html.Raw(ViewBag.Id)
LabelFor实际上是为模型属性保留的,因为模型能够传递数据类型和数据注释,如电子邮件、密码
通过使用更原始的HTML方式,您可以像使用任何其他HTML元素一样适当地设置样式 如果要在标签文本上显示
100
,那么为什么要使用Html.LabelFor
?LabelFor
的第一个参数显示属性的文本(或模型中的DisplayAttribute
),在您的情况下,该属性是数据
改为使用Html.Label
,如下所示
@Html.Label("id", (int)ViewBag.id)
或者,简单地说,使用html版本:
<label>ViewBag.id</label>
ViewBag.id
您的值在ViewBag中,而不是模型中,您需要返回视图(new Data(){Data=100});
@Html.Label("id", (int)ViewBag.id)
<label>ViewBag.id</label>