Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 3 MVC3视图模型与实体框架模型_Asp.net Mvc 3_Entity Framework - Fatal编程技术网

Asp.net mvc 3 MVC3视图模型与实体框架模型

Asp.net mvc 3 MVC3视图模型与实体框架模型,asp.net-mvc-3,entity-framework,Asp.net Mvc 3,Entity Framework,我不知道该怎么解释,但这是 我使用EF4.3构建了一个代码优先的数据模型。其中一个类,“Address”包含典型的地址数据、街道、城市、州等。模型中的其他类包含“Address”类的实例 这个问题。将使用不同的视图收集/显示数据,其中一些视图需要地址字段,其他视图则不需要 我可以构建不同的视图模型,每个模型都有必要的验证属性,并在数据模型和视图模型之间来回复制数据,但这似乎是错误的 我错过了什么?必须有更聪明的方法来做到这一点 谢谢你的帮助, Jimmy首先阅读以下问题及其答案: 此外,

我不知道该怎么解释,但这是

我使用EF4.3构建了一个代码优先的数据模型。其中一个类,“Address”包含典型的地址数据、街道、城市、州等。模型中的其他类包含“Address”类的实例

这个问题。将使用不同的视图收集/显示数据,其中一些视图需要地址字段,其他视图则不需要

我可以构建不同的视图模型,每个模型都有必要的验证属性,并在数据模型和视图模型之间来回复制数据,但这似乎是错误的

我错过了什么?必须有更聪明的方法来做到这一点

谢谢你的帮助,
Jimmy首先阅读以下问题及其答案:

此外,本文还有助于:

总之,我认为在大多数情况下,有一个胖乎乎的域模型(DM)但与之相关的轻量级表示模型(PM)是有帮助的。因此,当我们只想编辑一小部分肥胖DM时,我们的一位PM会举手

想象一下DM中的这个类:

namespace DomainModels
{
    public class Person
    {
         public int ID { get; set; }
         public string FirstName { get; set; }
         public string MiddleName { get; set; }
         public string LastName { get; set; }
         public DateTime? DoB { get; set; }
         public MyAddressDM Address { get; set; }
         public string Phone { get; set; }
         public IEnumerable<MyCarModel> Cars { get; set; }
         //etc.
     }
}
在另一个视图中,我们需要为一个人添加/删除汽车:

namesapce PresentationModels
{
     public PersonCars
     {
         public int ID { get; set;}
         public string FullName { get; set;}
         public IEnumerable<PMCar> Cars { get; set;}
     }
}
namesapce表示模型
{
公众人物
{
公共int ID{get;set;}
公共字符串全名{get;set;}
公共IEnumerable汽车{get;set;}
}
}

DO和PM之间的映射是这个难题的黄金部分。一定要看一看。

多亏了HID。你给了我思考的食物。我正在读,并且在重读,你指出的文章。也在查看AutoMapper-再次感谢你,吉米
namesapce PresentationModels
{
     public PersonCars
     {
         public int ID { get; set;}
         public string FullName { get; set;}
         public IEnumerable<PMCar> Cars { get; set;}
     }
}