Я пытаюсь выяснить, возможно ли множественное наследование в представлении в ASP.Net MVC. Прямо сейчас я пытаюсь распечатать список записей из двух разных таблиц из моей модели в одном представлении. У меня есть следующая строка в верхней части моего представления:
Inherits="System.Web.Mvc.ViewPage<List<GEApproval.Models.CoursePrefix>>"
Но я также хочу включить таблицу Course следующим образом:
Inherits="System.Web.Mvc.ViewPage<List<GEApproval.Models.Course>>"
Я не уверен, как это можно сделать, любая помощь или предложения приветствуются.
UPDATE:
Спасибо всем за помощь, я продолжил и создал составной класс следующим образом:
namespace GEApproval.Models
{
public class Listings: GEApproval.Models.CoursePrefix, GEApproval.Models.ICourse
{
public List<CoursePrefix> CoursePrefixObjList { get; set; }
public List<Course> CourseObjList { get; set; }
private GEApprovalDataModel _db;
//Constructor
public Listings()
{
_db = new GEApprovalDataModel();
}
//Generate a list of all courses associated with the prefix and place in ViewData model
public void listCourses(ViewDataDictionary viewData, int prefixID)
{
var test = _db.CoursePrefix.Include("Course").First(cp => cp.id == 1);
//Show total courses for this prefix
viewData.Model = test.Course.ToList();
viewData["prefix"] = test.Prefix;
viewData["courseCount"] = test.Course.Count;
int courseCount = test.Course.Count();//Test
}
}
}
И, на мой взгляд, теперь у меня есть следующая строка:
Inherits="System.Web.Mvc.ViewPage<List<GEApproval.Models.Listings>>"
Я все еще немного сбит с толку, потому что я все еще не могу получить доступ к свойствам объекта Course при перечислении их в моем представлении, потому что я наследую только напрямую от CoursePrefix. Я не уверен, что мне не хватает. Нужно ли иметь конструктор для составного объекта? Нужны ли мне инструкции наследования и реализации для CoursePrefix и ICourse соответственно, если я уже, якобы, выставляю свойства каждого из них в классе-оболочке листингов ??