C# 忽略从目标到源的自动映射中的属性?
映射配置文件:C# 忽略从目标到源的自动映射中的属性?,c#,automapper,C#,Automapper,映射配置文件: Mapper.CreateMap<Customer, CustomerDto>(); Mapper.CreateMap<CustomerDto, Customer>(); Mapper.CreateMap<Movie, MoviesDto>(); Mapper.CreateMap<MoviesDto, Movie>(MemberList.Source); MoviesDtoclass
Mapper.CreateMap<Customer, CustomerDto>();
Mapper.CreateMap<CustomerDto, Customer>();
Mapper.CreateMap<Movie, MoviesDto>();
Mapper.CreateMap<MoviesDto, Movie>(MemberList.Source);
MoviesDto
class:
namespace Demo3.Models
{
public class Movie
{
public int Id { get; set; }
[Required(ErrorMessage = "Please Enter Customer Name")]
[StringLength(255)]
public string Name { get; set; }
public Genre Genre { get; set; }
[Required]
public byte GenreId { get; set; }
public DateTime DateAdded { get; set; }
[Display(Name = "Release Date")]
public DateTime ReleaseDate { get; set; }
[Display(Name = "Number In Stock")]
[Range(1, 20)]
public byte NumberInStock
{
get; set;
}
}
}
namespace Demo3.Dtos
{
public class MoviesDto
{
public int Id { get; set; }
[Required]
[StringLength(255)]
public string Name { get; set; }
[Required]
public byte GenreId { get; set; }
public DateTime ReleaseDate { get; set; }
//public Genre Genre { get; set; }
[Range(1, 20)]
public byte NumberInStock
{
get; set;
}
}
}
例外情况:
EntityFramework.dll中发生“System.InvalidOperationException”类型的异常,但未在用户代码中处理
及
我需要在保存时忽略
类型
属性。在定义单个属性映射时(由于它们使用相同的名称自动映射,所以您没有定义),您必须指定一条忽略指令,如下所示:
Mapper.CreateMap<MoviesDto, Movie>()
.ForMember(d => d.Genre, o => o.Ignore());
Mapper.CreateMap()
.ForMember(d=>d.Genre,o=>o.Ignore());
发生此错误时,您将映射到哪个方向?顺便说一句,这个错误实际上不在AutoMapper中,而是在AutoMapper中EntityFramework@BDL公平地说,我已经扩展了我的答案