В MVC 3, как я могу получить доступ к модели из частичного представления? - PullRequest
1 голос
/ 03 февраля 2012

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

В View1:

 @Html.Partial("_LayoutMyPartialView", new MyModel1())

В View2:

@Html.Partial("_LayoutMyPartialView", new MyModel2())

Как получить доступ к модели в частичном представлении для работы с данными?

ОБНОВЛЕНИЕ

Мои модели делаютне имеют одинаковую структуру.

Ответы [ 2 ]

3 голосов
/ 03 февраля 2012

Вы будете использовать ключевое слово Model для доступа к своей модели, например:

Model.UserName

даст вам свойство UserName объекта.

Убедитесь, что ваш частичный вид также строго напечатан:

@model MyModel1
2 голосов
/ 04 февраля 2012

Ваше требование кажется совсем другим.

Но все же вот рекомендуемый дизайн для достижения того, что вы хотите (на основе исходного вопроса)

  1. имеет ViewModel, который содержит экземпляры Model1 и Model2, таким образом вы избавите от необходимости отображать 2 разных объекта.

    Public class MyViewModel
    

    { public MyModel1 Model1Instance {get; set;} public MyModel2 Model2Instance {get; set;} }

Позже просто отметьте в своем представлении @model с помощью этой единственной модели представления. это даст вам доступ к обеим моделям в вашей части, пока вы проходите объекты через контроллер.

...