前提:我正在使用ASP.NET项目使用实体框架,存储库模式和MVP。
问题:在MVP模式中,如何创建类型列表的属性< t>在视图中,t是由实体框架生成的数据类型?
在下面的代码中,列表中的" Teammember"< teammember>是一个基于SQL Table Teammberstable的实体框架创建的类。这里的问题是我正在创建列表< t>在我看来,属性是我实体框架模型的数据类型。这似乎违反了问题的分离,因为该视图现在取决于我的模型层中的数据类型。如何在这种情况下完成视图和模型的清洁分离?
注意:在一个简单的文本框的情况下,由于数据类型为.NET类型,例如字符串或Datatime。但是,如果要在视图中创建的属性数据类型来自模型,就数据类型而言,它似乎使视图与模型更加紧密。
//***************Simplified Code Sample*******************//
using Model;
namespace View
{
public interface IEmployeeView
{
List<TeamMember> TeamMembers { set; }
}
}
介绍一个视图模型,该模型将代表您的团队班级并将其传递到您的视图中,例如。
public class TeamMemberViewModel
{
...
}
public interface IEmployee
{
public List<TeamMemberViewModel> TeamMembers { get; set; }
}