Как пройти две модели со связанной датой для просмотра MVC4.Пропустите две модели со связанной датой для просмотра MVC4
У меня есть класс требований, и поставщик должен проверить в пределах своего требования или нет.
Так что мне нужно показать на мой взгляд список требований в одном столбце и проверить/ответить поставщику в другом столбце. Поэтому, я думаю, мне нужно передать 2 модели, которые они связаны друг с другом. Как это сделать? А затем сохраните ответы поставщиков на конкретные требования в БД.
Вот мои модели
namespace OTMS.Models
{
public class Requiernments
{
[Key]
public int RequiernmentId { get; set; }
public int ID { get; set; }//link to project Name
public string RequiernmentName { get; set; }
public string RequiernmentType { get; set; }
}
namespace OTMS.Models
{
public class Supplier
{
[Key]
public int SupplierId { get; set; }
public int RequiernmentId { get; set; }
public string SupplierName { get; set;
public string Answer{ get; set; }
}
}
Update:
Мой ViewModel:
namespace OTMS.ViewModel
{
public class SupplierAnswerViewModel
{
public Supplier Sup{ get; set; }
public Requiernments Req { get; set; }
}
}
Мой контроллер:
public ProjectContext b = new ProjectContext();
public ActionResult ListRequiermentBySupplier(int ID) //Id of the project
{
var Project = b.RequiernmentEntries.Where(s => s.ID == ID).ToList();//geting all requierment under project
List<SupplierAnswerViewModel> listvm = new List<SupplierAnswerViewModel>();
SupplierAnswerViewModel vm = new SupplierAnswerViewModel();
vm.requirements = new Requiernments();
vm.requirements.RequiernmentId = ID;
vm.supplier = new Supplier();
vm.supplier.SupplierId = 2; //am testing supplier of this id=2 for now
listvm.Add(vm);
return View(listvm); ;
}
Мое мнение:
@model IEnumerable<OTMS.ViewModel.SupplierAnswerViewModel>
<table>
<tr>
<th>
RequiernmentName
</th>
<th>
RequiernmentType
</th>
<th>
UserId
</th>
<th>
SupplierName
</th>
<th>
Supplier Answer
</th>
<th></th>
</tr>
@if (Model != null)
{
foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.requirements.RequiernmentName)
</td>
<td>
@Html.DisplayFor(modelItem => item.requirements.RequiernmentType)
</td>
<td>
@Html.DisplayFor(modelItem => item.supplier.UserId)
</td>
<td>
@Html.DisplayFor(modelItem => item.supplier.SupplierName)
</td>
<td>
@Html.DisplayFor(modelItem => item.supplier.Answer)
</td>
<td>
<td>
@Html.ActionLink("Edit", "Edit", new { /* id=item.PrimaryKey */ }) |
</td>
</tr>
}
}
</table>
возможно дубликат [ASP.NET MVC - Просмотр с несколькими моделями] (http://stackoverflow.com/questions/ 944334/asp-net-mvc-view-with-multiple-models) –