Asp.net mvc 使用EditorForModel显示实体数据
我有一个数据填充的枚举器,我将它发送到视图,我将EditorForModel呈现如下:Asp.net mvc 使用EditorForModel显示实体数据,asp.net-mvc,entity-framework,razor,Asp.net Mvc,Entity Framework,Razor,我有一个数据填充的枚举器,我将它发送到视图,我将EditorForModel呈现如下: @model IEnumerable<TestProj.Models.Hours> @Html.EditorForModel() -我将获取SliceName后面的数据(仅限文本) 如果我使用: @Html.LabelFor(x => x.SliceName) -我将获取标签文本的标题“SliceName” 如何使用@Html.LabelFor以@Html.DisplayTextFor之
@model IEnumerable<TestProj.Models.Hours>
@Html.EditorForModel()
-我将获取SliceName后面的数据(仅限文本)
如果我使用:
@Html.LabelFor(x => x.SliceName)
-我将获取标签文本的标题“SliceName”
如何使用@Html.LabelFor以@Html.DisplayTextFor之类的文本形式获取数据?听起来您的表单可能有问题 如果您这样做:
@Html.BeginForm()
{
...
}
与此相反:
@using(Html.BeginForm())
{
...
}
模型的名称将出现,而不是模型的值。在我的布局中,我在某个点上渲染主体“@RenderBody()”,该点将在页面的主区域使用EditorForModel渲染该区域,我甚至没有@Html.BeginForm()或@using(Html.BeginForm()),我尝试将它这样放置在主体页面中(本例仅为必填部分):@using(Html.BeginForm(“Search_Times”,“Search”){@model IEnumerable@Html.EditorForModel()}仍然呈现标题而不是数据。@Html.DisplayTextFor(x=>x.SliceName)例如将显示“SliceName”后面的数据,但它不是“标签”并且无法使用更多参数来设置元素的格式。我想我现在理解了您的问题。@Html.LabelFor不起作用,因为它是用于显示标签的。您是否尝试过@Html.DisplayFor()?该对象必须呈现为标签,以匹配作为项目指南一部分提供给我的css。基本上是@Html.LabelFor()不会做你需要的事情,所以你需要找到一个替代方案。幸运的是,我认为会有一些简单的解决办法。HTML在呈现时需要什么样的外观?
@Html.BeginForm()
{
...
}
@using(Html.BeginForm())
{
...
}