在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
下面是简单例子 1引用Mapster.dll包 2.初始化,设置映射规则 3.下面有两个实体 ModelA 、ModelB class ModelA{ public string UserId{get;set;} public string Remark{get;set;} }
class ModelB{ public string User_id{get;set;} public string Remark_msg{get;set;} public string Lab_id{get;set;} } 4.初始化 (推荐: 将所有的映射规则写一起,当项目执行时一起进行初始化操作 ,之后直接使用,避免每次映射都需要进行初始化) public static void InitMapster() { // modelA 映射到 modelB TypeAdapterConfig<ModelA, ModelB> .NewConfig() .AddDestinationTransform((string x) => !string.IsNullOrWhiteSpace(x) ? x : " ") // 空值替换 .Map(dest => dest.Lab_id, src => MapContext.Current.Parameters["labId"]) // 获取运行时的labId的值 .Map(dest => dest.User_id, src => src.UserId) // 将UserId的值映射给User_id .Map(dest => dest.Remark_msg, src => src.Remark); // 将Remark的值映射给Remark_msg TypeAdapterConfig<ModelC, ModelD> ...... } 5.使用映射 // 调用Mapster 将 List<ModelA> modelAs 映射到 List<ModelB> modelBs public void test() { List<modelA> modelAs = ...; // 获取modelA对象集合 int labId = 1; // 获取 labId的值 // 进行映射 var modelBs = modelAs.BuildAdapter() .AddParameters("labId", labId) // 设置值 .AdaptToType<List<ModelB>>(); // 将某一实体映射成List<ModelB> }
|
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论