Asp.net mvc 3 mvc3有没有办法改变razor的命名系统
我有一个允许Html的局部视图,Asp.net mvc 3 mvc3有没有办法改变razor的命名系统,asp.net-mvc-3,razor,Asp.net Mvc 3,Razor,我有一个允许Html的局部视图,的呈现的名称属性将所有内容都删除,例如,这是我的文本区域 @Html.TextAreaFor(model => model.cars.mycars) 使属性呈现为name=“cars.mycars”,是否仍要在不使用@name的情况下将其更改为cars\u mycars 我想要车\u我的车的原因是因为它是一个在模型中包含AllowHtml的字段 [AllowHtml] public string mycars { get; set
的呈现的名称
属性将所有内容都删除,例如,这是我的文本区域
@Html.TextAreaFor(model => model.cars.mycars)
使属性呈现为name=“cars.mycars”
,是否仍要在不使用@name的情况下将其更改为cars\u mycars
我想要车\u我的车的原因是因为它是一个在模型中包含AllowHtml的字段
[AllowHtml]
public string mycars { get; set; }
为了让AllowHtml工作,我需要一个强类型的模型,比如@Html.TextAreaFor(model=>model.mycars),但是我在一个视图中使用多个模型,因此我有
@Html.TextAreaFor(model => model.cars.mycars, @new{id="cars_mycars",@Name="cars_mycars"})
这是一个局部视图,当我试图提交它时,什么都没有发生。这是表格中唯一的字段,因此问题主要存在于此,此外,如果我将
ValidateInput(False)
在action方法上,一切正常,这让我回到@name约定不起作用 你可以这样试试
@Html.TextArea("cars_mycars")
我对你的问题进行了编辑以使其更清楚,我是否正确理解了你的问题?另外,为什么要将“
cars\u mycars
”作为名称值?(因为ASP.NET MVC使用自己的格式进行模型绑定)。我希望将其作为名称值,因为我的表单位于分部中,我认为这就是它在分部中通信的方式。我让AllowHtml在另一个控制器上工作,它工作得很好。唯一不同的是这一个是汽车。MyCars你想发布主细节视图吗?