Asp.net mvc 请参阅MVC中的多个表

Asp.net mvc 请参阅MVC中的多个表,asp.net-mvc,class,Asp.net Mvc,Class,我可以调用/使用班级中的多个表吗 e、 g 如何调用此类中的另一个表,例如CustomerTable,类似这样的内容: public class UserModel : UsersTable : CustomerTable 如果您想在MVC ViewModels中重复使用实体层类(例如实体框架对象),我将使用来实现这一点,即: public class UserModel // View Model { public UsersTable UsersTable // EF POCO

我可以调用/使用班级中的多个表吗

e、 g

如何调用此类中的另一个表,例如CustomerTable,类似这样的内容:

public class UserModel : UsersTable : CustomerTable

如果您想在MVC ViewModels中重复使用实体层类(例如实体框架对象),我将使用来实现这一点,即:

public class UserModel  // View Model
{
    public UsersTable UsersTable // EF POCO
    {
       get;
       set;
    }
    public CustomerTable CustomerTable
    {
      get;
      set;
    }

    // Other random data needed for your `.cshtml` / View
}

这样,您就可以独立地扩展视图模型。正如您毫无疑问地发现的,C#不支持多重继承(或混合/特征),因此您的选项将受到继承的限制(这可以说是不合逻辑的,因为
ViewModel
不是OO意义上的
DTO

公共类UserModel:UsersTable,CustomerTable尝试此错误,“CustomerTable”:需要intrface名称抱歉,我忘了多重继承在C#中不起作用。NET您可以改用扩展方法/属性。或者可以使UserTable继承CustomerTable。因此,当您继承UserTable时,CustomerTable也会被继承。或者您可以使用接口。
public class UserModel  // View Model
{
    public UsersTable UsersTable // EF POCO
    {
       get;
       set;
    }
    public CustomerTable CustomerTable
    {
      get;
      set;
    }

    // Other random data needed for your `.cshtml` / View
}