Bagaimana cara melewatkan dua model dengan tanggal terkait untuk melihat MVC4.
Saya memiliki kelas persyaratan dan pemasok harus memeriksa apakah dia memiliki persyaratan khusus atau tidak.
Jadi saya perlu menunjukkan dalam pandangan saya daftar persyaratan di satu kolom dan pemeriksaan/jawaban pemasok di kolom lain. Jadi saya rasa saya harus melewati 2 model yang saling terkait satu sama lain. Bagaimana cara melakukannya? Dan kemudian menyimpan jawaban pemasok untuk kebutuhan spesifik di DB.
Ini model saya
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; }
}
}
Pembaruan:
Model tampilan saya:
namespace OTMS.ViewModel
{
public class SupplierAnswerViewModel
{
public Supplier Sup{ get; set; }
public Requiernments Req { get; set; }
}
}
Pengontrol saya:
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); ;
}
Pandangan ku:
@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>