C#自动映射-固有映射-简单示例

C#自动映射-固有映射-简单示例,c#,automapper,C#,Automapper,几天前,为了进行映射,我熟悉到,然后我可以成功地将类B映射到A。现在我有另一个关于继承的问题 我有四节课 A类: public class A : BaseViewModel { prop string p1 { get; set; } prop string p2 { get; set; } prop string p3 { get; set; } } public class BaseViewModel { prop int Id {get; set;

几天前,为了进行映射,我熟悉到,然后我可以成功地将类
B
映射到
A
。现在我有另一个关于继承的问题

我有四节课

A类:

public class A : BaseViewModel {
    prop string p1  { get; set; }
    prop string p2  { get; set; }
    prop string p3  { get; set; }
}
public class BaseViewModel {
    prop int Id {get; set;}
    prop string SomeP1 {get; set;}
}
public class B : BaseModel {
    prop string p1  { get; set; }
    prop string p3  { get; set; }
}
public class BaseModel {
    prop int Id {get; set;}
    prop string SomeP2 {get; set;}
}
Mapper.CreateMap<B, A>();
A a_obj= Mapper.Map<A>(b_obj);
类BaseViewModel:

public class A : BaseViewModel {
    prop string p1  { get; set; }
    prop string p2  { get; set; }
    prop string p3  { get; set; }
}
public class BaseViewModel {
    prop int Id {get; set;}
    prop string SomeP1 {get; set;}
}
public class B : BaseModel {
    prop string p1  { get; set; }
    prop string p3  { get; set; }
}
public class BaseModel {
    prop int Id {get; set;}
    prop string SomeP2 {get; set;}
}
Mapper.CreateMap<B, A>();
A a_obj= Mapper.Map<A>(b_obj);
B类:

public class A : BaseViewModel {
    prop string p1  { get; set; }
    prop string p2  { get; set; }
    prop string p3  { get; set; }
}
public class BaseViewModel {
    prop int Id {get; set;}
    prop string SomeP1 {get; set;}
}
public class B : BaseModel {
    prop string p1  { get; set; }
    prop string p3  { get; set; }
}
public class BaseModel {
    prop int Id {get; set;}
    prop string SomeP2 {get; set;}
}
Mapper.CreateMap<B, A>();
A a_obj= Mapper.Map<A>(b_obj);
类基本模型:

public class A : BaseViewModel {
    prop string p1  { get; set; }
    prop string p2  { get; set; }
    prop string p3  { get; set; }
}
public class BaseViewModel {
    prop int Id {get; set;}
    prop string SomeP1 {get; set;}
}
public class B : BaseModel {
    prop string p1  { get; set; }
    prop string p3  { get; set; }
}
public class BaseModel {
    prop int Id {get; set;}
    prop string SomeP2 {get; set;}
}
Mapper.CreateMap<B, A>();
A a_obj= Mapper.Map<A>(b_obj);
映射器:

public class A : BaseViewModel {
    prop string p1  { get; set; }
    prop string p2  { get; set; }
    prop string p3  { get; set; }
}
public class BaseViewModel {
    prop int Id {get; set;}
    prop string SomeP1 {get; set;}
}
public class B : BaseModel {
    prop string p1  { get; set; }
    prop string p3  { get; set; }
}
public class BaseModel {
    prop int Id {get; set;}
    prop string SomeP2 {get; set;}
}
Mapper.CreateMap<B, A>();
A a_obj= Mapper.Map<A>(b_obj);
Mapper.CreateMap();
A_obj=Mapper.Map,但对我来说有点难

您可以使用:

 Mapper.Initialize(cfg => cfg.CreateMap<B, A>());
 var a_obj = Mapper.Map<A>(b_obj);
Mapper.Initialize(cfg=>cfg.CreateMap());
var a_obj=Mapper.Map(b_obj);
提示:您必须使用automapper v6。*


您需要
包括
。因此类似于
CreateMap().Include()
的内容,并可能根据您的需要在末尾添加
ReverseMap()
。您能给我一个完整的解决方案吗?