2017-02-20 4 views
1

У меня есть модель представления, как показано ниже. Я хотел бы использовать имя свойства/значения - AllowOrgs и IsOrgOnly в модели с вложенным представлением - EditAddressViewModel тоже.
Как достичь этой цели?Использование имени и значений свойств из модели основного представления в модели с вложенным представлением

Мой главный вид выглядит так -

@Html.EditorFor(m=> m.AddressEditor,"AddAddress") 

Моя основная модель представления, как это -

public class AddressViewModel 
{ 
    public EditAddressViewModel AddressEditor {get; set;} 
    public bool AllowOrgs { get;set; } 
    public bool IsOrgOnly { get; set; } 
} 
+0

Поскольку у вас есть модели просмотра, тогда 'EditAddressViewModel' должен просто содержать эти свойства, но вы можете передать значения, используя одну из [перегрузок] (https://msdn.microsoft.com/en-us/library/ system.web.mvc.html.editorextensions.editorfor (v = vs.118) .aspx # М: System.Web.Mvc.Html.EditorExtensions.EditorFor''2% 28System.Web.Mvc.HtmlHelper { '' 0} , System.Linq.Expressions.Expression {System.Func {'' 0, '' 1}}, System.Object% 29) 'EditorFor', который принимает' AdditionalViewData' - например '@ Html.EditorFor (m => m.AddressEditor, new {allowOrgs = Model.AllowOrgs})' –

+0

Может ли 'AdditonalViewData' быть установлен на лету или он должен быть частью пакета просмотра в модели родительского представления ? – GilliVilla

+0

'ViewBag' не требуется, если' AllowOrgs' является частью модели. И в шаблоне обращайтесь к нему с помощью 'bool AllowOrgs = ViewData [" allowOrgs "];' –

ответ

0

Вы спрашиваете, как вы можете привязать к свойству AllowOrgs в AddressEditor?

Если да, то все, что вам нужно сделать, это: @ Html.EditorFor (м => m.AddressEditor.AllowOrgs, "AddAddress")

И Razor позаботится об остальном.

Если это не то, что вы хотели спросить, предоставьте немного больше информации о том, что вы ищете.

+0

Нет ... это не то, что я спросил. Я хотел бы использовать значения 'AllowOrgs' для передачи вложенной модели. 'AddressEditor' не имеет свойства' AllowOrgs'. – GilliVilla

+0

Любая причина, по которой EditAddressViewModel не может наследовать AddressViewModel? который будет иметь только свойства AllowOrgs и IsOrgOnly? – univ