не может получить значение другого свойства при вызове помощника через Html.EditorFor - PullRequest
0 голосов
/ 12 ноября 2010

У меня есть помощник html, если я назову его так:

Html.MyHelper("Prop1")

Я могу получить данные другого свойства, например:

 public static MvcHtmlString MyHelper(
            this HtmlHelper html,
            string prop){
    var p = TypeDescriptor.GetProperties(html.ViewData.Model).Find("Prop2", false);
    if (p != null) value = p.GetValue(html.ViewData.Model);
}

, но если вызвать его какэто:

Html.EditorFor(x => x.Prop1);

шаблон содержит это:

<%= Html.MyHelper(ViewData.TemplateInfo.GetFullHtmlFieldName(""), ViewData.TemplateInfo.FormattedModelValue) %>

чем я не могу получить значение Prop2, кто-нибудь знает, как его получить?

1 Ответ

1 голос
/ 12 ноября 2010

Вы можете передать объект модели или создать новый объект модели для передачи в

Html.EditorFor(x => x, "Prop1");

Html.EditorFor(x => new Prop1Model { X = Model.Prop1, Y = Model.Prop2 }, "Prop1");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...