Я новичок MVC.
У меня проблема с тем, как asp.mvc обрабатывает отношения родитель-потомок базы данных.
У меня есть три таблицы: «Компания», «Член» и «Метод».Я создал отношения родитель / потомок между «Компания» и «Участник» и отношения родитель / потомок между «Участник» и «Метод».
Я использую Linq to Sql и шаблон репозитория для связи с моим mssqlбаза данных.
В моем HomeController у меня есть следующий результат действия
var memData = _repository.GetCompany(id);
return View(memData);
В моем представлении я хочу использовать три частичных представления
<% Html.RenderPartial("ShowCompany"); %>
<% Html.RenderPartial("ShowMember"); %>
<% Html.RenderPartial("ShowMethod"); %>
Я смогдля создания первых двух частичных представлений и использования следующего кода для итерации по каждому из свойств класса.
foreach(Member m in Model.Members)
foreach(Company c in Model.Company)
Поскольку члены являются дочерними для компании, я могу выполнять итерации по свойству навигации по элементам в модели.1015 * Однако я не могу получить доступ к третьей таблице «Метод» в модели компании.
В контексте класса Компании я предполагаю, что хотя «Метод» является дочерним по отношению к «Участнику», но не является дочерним по «Компания », что навигационное свойство не выставлено так же, как для класса« Член »?
Не могли бы вы посоветовать, как мне поступить?
Должен ли я создать модель пользовательского представления, содержащую два свойства «Компания» и «Метод»?
Как мне этого добиться?Я предполагаю, что в моем домашнем контроллере у меня был бы, как и в моем первом методе хранилища, дополнительный метод для получения объекта «Метод»
var memData = _repository.GetCompany(id);
var methodData = _repository.GetMethod(id);
Как бы я передал эти два объекта в View ()?