MVC5 Razor привязка viewmodel с помощником - PullRequest
0 голосов
/ 12 сентября 2018

У меня есть следующее ViewModel:

public class MyViewModel{
    public Foo FooProperty {get;set;}

    public class Foo{
        public string a {get;set;}
        public string b {get;set;}
        public string c {get;set;}
    }
}

Теперь я использую Razor для привязки входных данных HTML к моим свойствам следующим образом:

@Html.TextBoxFor(m => m.FooProperty.a)
@Html.TextBoxFor(m => m.FooProperty.b)
@Html.TextBoxFor(m => m.FooProperty.c)

Мне было интересно, смогу ли я обернуть это helper.

Пока что попытался передать выражение Linq моему помощнику так:

@helper MyHelper(System.Linq.Expressions.Expression<Func<MyViewModel,string>> expression){
    @Html.TexBoxFor(expression)
}

Это работает.

Есть ли способ передать что-то вроде "частичного" выражения моему помощнику, например

System.Linq.Expressions.Expression<Func<MyViewModel,Foo>>

и затем используйте его для ссылки на свойства Foo из этого "частичного" выражения, чтобы связать a, b, c, начиная с моего "частичного" выражения?

...