Giả sử bạn có danh sách Người A và danh sách Người B trong một trang. Và hai lớp này là các lớp riêng biệt trong L2S, đại diện cho hai bảng khác nhau. Do đó, bạn không thể chuyển một mô hình như sau:C# mô hình mvc so với viewbag
...
@model PeopleA
...
@foreach(var peopleA in Model.People) ...
@foreach(var peopleB in //what?)
Theo đó, tôi đoán, tôi có ba tùy chọn để làm theo.
- Thứ nhất là chia trang thành các chế độ xem một phần để tôi có thể chuyển mô hình qua trình trợ giúp
RenderAction
. Vì tôi sẽ chỉ sử dụng một phần lượt xem này một khi tùy chọn này dường như không thu hút tôi. - Tùy chọn thứ hai là sử dụng ViewBags mà tôi không muốn kể từ khi tôi thích các kiểu máy được nhập mạnh mẽ hơn.
- Người cuối cùng, cuối cùng, mà tôi là về để sử dụng nhưng muốn hỏi trước khi làm như vậy, là để tạo ra một mô hình như sau:
ModelMyPage.cs
public List<PeopleA> peopleA { get; set; }
public List<PeopleB> peopleB { get; set; }
MyController. cs
...
ModelMyPage m = new ModelMyPage();
m.peopleA = // query
m.peopleB = // another query
return(m);
Và bạn có ý tưởng. Đây có phải là cách hợp lệ để hoàn thành nhiệm vụ của tôi hoặc có cách nào tốt hơn để làm những gì tôi muốn không?