如何在asp-for属性或@ Html.EditorFor或@ Html.TextBoxFor中使用函数

时间:2018-07-24 03:57:13

标签: asp.net-core-mvc asp.net-core-2.0 razor-pages

我正在.Net Core 2.0中开发MVC网站。在此,我想要ViewModel绑定,但是我的ViewModel是IEnumeration Type。当我想在标签中使用函数时,即

@Html.EditorFor(Model.Property.Where(s => s.SomeCondition).Select(s => s.someProperty).First())

我收到错误。我也用过

<input type="number" asp-for="@Model.Property.Where(s => s.SomeCondition).Select(s => s.someProperty).First()">

这也会产生错误。有什么方法可以做手术吗?

1 个答案:

答案 0 :(得分:1)

这是不可能的。在这里,模型表达式的全部要点是引用一个特定的属性,仅是为了在输入中创建name属性,该属性将与modelbinder发布时的期望保持一致。模型表达式不能包含方法,因为无法绑定到方法,尤其是在这种情况下,无法通过某些任意过滤的查询的结果绑定到属性。