首先在mvc中使用实体框架代码和视图模型?

时间:2014-10-04 10:27:13

标签: asp.net-mvc entity-framework asp.net-mvc-4 entity-framework-4

所以当在mvc中首先实现实体框架代码时,我们是否将视图限制与视图模型分开?这是因为对于数据库,首先生成模型(所以我看到将它分离到视图模型的原因,但首先是代码如何?)

我要问的下一个问题是将视图模型分离到另一个文件夹是否可以?因为默认情况下asp.net是MVC,

中没有视图模型

模型< ---这个型号叫什么?数据模型?领域模型?商业模式?

 public class Student
    {
        public int ID { get; set; }
        [StringLength(250)]
        public string LastName { get; set; }
        public string FirstMidName { get; set; }
        public DateTime EnrollmentDate { get; set; }
    }

查看模型

public class Student
    {
        public int ID { get; set; }
        [MaxLength(250)]
        [Required]
        public string LastName { get; set; }
        [Required]
        public string FirstMidName { get; set; }
        [Required]
        public DateTime EnrollmentDate { get; set; }
    }

2 个答案:

答案 0 :(得分:1)

您在mvc视图中使用的模型是 viewmodel 您在数据库中保留的模型是域模型

您的域模型可能包含一些您不需要在客户端使用它的属性 您的服务层必须将 Dto (数据传输对象)返回给您的客户,您可以将 dto 映射到 viewmodel

答案 1 :(得分:0)

第一个问题:

您应该使用部分类和元数据进行分隔,如下所示:

[MetadataType(typeof(StudentMD))]
public partial class Student
{
    public class StudentMD
   {
    public int ID { get; set; }
    [MaxLength(250)]
    [Required]
    public string LastName { get; set; }
    [Required]
    public string FirstMidName { get; set; }
    [Required]
    public DateTime EnrollmentDate { get; set; }
   }
}

第二个问题:

可以添加文件夹名称“View Model”

我也是在我的项目中做到的!