隐藏复杂类型

时间:2016-11-03 16:29:19

标签: c# asp.net-mvc razor html-helper

我们的应用程序中有CatalogValue的概念,其中包含IDDisplayText(以及其他)属性。

我们有TypeConverter允许模型绑定器将ID转换为CatalogValue的实例,到目前为止一切正常。

但是,当我们渲染HiddenFor而不是EditorFor时,它不再起作用,因为隐藏输入字段的valueMy.Namespace.SomeCatalogValueType而不是目录值的ID。这听起来合乎逻辑,因为MVC无法知道它应该使用ID。

那么,如何告诉ASP.NET MVC将ID作为值呈现?我们必须实现一个接口吗?是在呼叫ToString()吗?

目前我们有这个古怪的解决方法,我们想替换:

@Html.HiddenFor(x => x[i].BrennstoffArt, htmlAttributes: new { Value = @Model[i].BrennstoffArt.Id })

其中BrennstoffArtBrennstoffArtCatalogValue类型的属性。

0 个答案:

没有答案