2016-06-22 3 views
0

Я создаю подтверждение по электронной почте для заказов, которые размещаются на веб-сайте. У меня есть следующее, который содержит информацию о заказе:Передача данных из службы в шаблон представления в ASP.NET MVC

 IOrder order = null; 
     if (response.Data != null) 
     { 
      order = FillOrder(response.Data); 
     } 

Там больше коды перед этим, но это заполняет объект, который хранит все наши данные заказа для заказа. Затем я вызываю в службу, которая принимает шаблон представления в качестве параметра для форматирования электронной почты, мой вопрос в этом; Как мне перейти к передаче данных в шаблон представления из этой службы, так как это не действительно модель или что-то в этом роде, чтобы я мог получить правильно отформатированный шаблон представления, чтобы перейти в службу электронной почты, которую я создал? Дайте мне знать, если это имеет какой-то смысл, и если нет, я попытаюсь повторить его, спасибо.

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

+0

Нет, это действительно непонятно. Подумайте о размещении своего другого кода услуг, в котором вы передаете viewtemplate, и как эти данные заказа вы хотите передать вместе с этим? – Rahul

ответ

1

Из вашего редактирования, похоже, что вы просто хотите иметь информацию о вашем методе действий Order. Если да, то у вас есть два выбора:

  1. В вашем методе действия контроллера, непосредственно называют это отправило метод, который возвращает экземпляр Order и передать его в частичном виде.

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

  3. Если вы не хотите какой-либо модели, которые будут связаны с точки зрения затем вызвать службу и прикрепить его возвращаемое значение для ViewBag объекта как

    IOrder order = serviceOrderMethod(); ViewBag.Order = order;

Используйте то же самое в вашем частичным видом говоря

@ViewBag.Order 
Смежные вопросы