Как создать представление Master-Details с использованием инфраструктуры Asp.Net MVC - PullRequest
4 голосов
/ 25 июня 2009

В течение последних двух недель я оценивал среду Asp.Net MVC для нашего корпоративного приложения. Одна вещь, которую я пытаюсь достичь, это представление Master-Details. Поскольку очень ясно, что нет никакого состояния и обратной передачи. Теперь, например, я использую таблицу «Продукты, клиенты, заказы и детали заказа» из базы данных Northwind и использую Asp.Net MVC. Я хочу создать представление «Основные данные». По сути, я не хочу иметь отдельные представления (другими словами, страницы) для заказа и деталей заказа. Представление должно состоять из заказа и деталей заказа. Как я должен спроектировать свой контроллер и посмотреть, чтобы достичь этой функциональности.

Спасибо и С уважением, Бурхануддин Гхи Вала

Ответы [ 2 ]

6 голосов
/ 25 июня 2009

Вы хотели бы написать класс предметной модели для конкретного домена, который объединяет все данные из одного Order и его OrderDetails (я предполагаю, что есть отношение 1-> N для Order-> OrderDetails, не знакомого с Northwind):

public class OrderViewModel
{
  public Order Order {get;set;}
  public IEnumerable<OrderDetail> OrderDetails{get;set;}
}

Создайте шаблон просмотра, который привязывается к этому типу, отображая порядок и детали заказа на одной странице.

В вашем классе контроллера напишите метод действия, который будет заполнять один экземпляр класса OrderViewModel и передавать его в шаблон View.

0 голосов
/ 25 июня 2009

Вы должны рассмотреть возможность размещения деталей заказа в частичном представлении, чтобы сделать ваше представление заказа небольшим. Вы также сможете повторно использовать этот фрагмент в другом месте вашего приложения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...