我试图创建一个HtmlHelper来创建Bootstrap兼容的表单域。我的第一个目标是创建一个的HtmlHelper,将创建周围的div:这里使用ModelMetadata获取完整的属性名称
<div class="control-group"> ... </div>
继出色的意见,并在这里,我设法得到它相对迅速开展工作。但它并不总是有效。
我有一个复杂的属性ViewModel,所以在我的形式我访问字段m=>m.Complex.Element
。在我的帮手中,我检查元素是否存在验证错误。我使用ModelMetadata.FromLambdaExpression(expression, html.ViewData)
。我收到的元数据有属性名称Element
,而不是Complex.Element
。
当我检查此属性的ModelState时,我无法找到它,因为ModelState保留全名 - Complex.Element
。
我可以寻找部分匹配,希望没有其他元素,但这似乎是一个等待发生的讨厌的错误。我如何从表达式中获得完整的属性名称?
+1。我也有同样的问题。你的回答帮了我:) –