C# 在数据库中进行更改后,将.edmx实体属性映射到DTO
我不熟悉自动映射的概念。我在应用程序中使用数据库优先的方法,因此生成了一个.edmx文件,我将.edmx文件中存在的实体映射到DTO 现在我的问题是,每当我通过在模型浏览器中更新数据库来更改.edmx实体文件时,我都必须手动更改DTO实体 所以我怀疑我的映射是否有效。当我更新我的.edmx文件时,是否有任何方法不必手动进行这些更改和DTO的更改? 还是因为我没有正确配置自动映射器 这是我的自动映射器配置 AutoMapperWebConfiguration.csC# 在数据库中进行更改后,将.edmx实体属性映射到DTO,c#,asp.net-mvc,automapper,C#,Asp.net Mvc,Automapper,我不熟悉自动映射的概念。我在应用程序中使用数据库优先的方法,因此生成了一个.edmx文件,我将.edmx文件中存在的实体映射到DTO 现在我的问题是,每当我通过在模型浏览器中更新数据库来更改.edmx实体文件时,我都必须手动更改DTO实体 所以我怀疑我的映射是否有效。当我更新我的.edmx文件时,是否有任何方法不必手动进行这些更改和DTO的更改? 还是因为我没有正确配置自动映射器 这是我的自动映射器配置 AutoMapperWebConfiguration.cs class AutoMapper
class AutoMapperWebConfiguration
{
public static void Configure()
{
Mapper.Initialize(cfg =>
{
cfg.AddProfile(new UserProfile());
cfg.AddProfile(new PostProfile());
});
}
}
UserProfile.cs
public class UserProfile : Profile
{
protected override void Configure()
{
Mapper.CreateMap<tabletest,tabletestDTO>();
}
}
请让我知道要添加到该配置中的内容,以便我可以随时自动更改DTO实体。edmx实体已更新。AutoMapper无法更新您的DTO,它只是映射它。最简单的解决方法是在运行时使用Mapper.AssertConfiguration验证配置: AutoMapper检查以确保每个目标类型 成员在源类型上具有相应的类型成员 另一个更复杂的选项是使用T4模板基于实体类生成DTO