C# 将类属性映射到其他(相同属性)类

C# 将类属性映射到其他(相同属性)类,c#,C#,我有两个具有完全相同命名属性的类(1个业务类和1个数据类) 目前,我已经编写了一个“convert”方法,将van 1类的所有属性映射到另一个: private class BusinessLogic convert(Datalogic dataclass) { Businesslogic businessclass = new BusinessLogic(); businessclass.ID = dataclass.ID; businessclass.name = d

我有两个具有完全相同命名属性的类(1个业务类和1个数据类)

目前,我已经编写了一个“convert”方法,将van 1类的所有属性映射到另一个:

private class BusinessLogic convert(Datalogic dataclass)
{
    Businesslogic businessclass = new BusinessLogic();
    businessclass.ID = dataclass.ID;
    businessclass.name = dataclass.name;
    .....
    return businessclass;
}

似乎必须有一种更简单的方法。我只是不知道如何搜索它。有人能把我带到正确的轨道上吗

这是一个映射工具的任务,例如-如果所有属性的名称都相同,这几乎是一行,因为按照惯例,它们将映射到目标类中的相应属性

对于您的特定示例,可以是:

Mapper.CreateMap<Datalogic, BusinessLogic>();
BusinessLogic businessclass = Mapper.Map<Datalogic, BusinessLogic>(dataclass);
Mapper.CreateMap();
BusinessLogic businessclass=Mapper.Map(数据类);

这是映射工具的任务,例如-如果所有属性的名称相同,这几乎是一行,因为按照惯例,它们将映射到目标类中的相应属性

对于您的特定示例,可以是:

Mapper.CreateMap<Datalogic, BusinessLogic>();
BusinessLogic businessclass = Mapper.Map<Datalogic, BusinessLogic>(dataclass);
Mapper.CreateMap();
BusinessLogic businessclass=Mapper.Map(数据类);

AutoMapper是一个可用的库,它可以为您实现对象到对象的映射

使用AutoMapper,您的代码可以简化为

Mapper.CreateMap<Datalogic , Businesslogic >();
Product product= GetProductFromDB(2);
Businesslogic productViewItem = Mapper.Map<Datalogic , Businesslogic >(product);
Mapper.CreateMap();
Product Product=GetProductFromDB(2);
Businesslogic productViewItem=Mapper.Map(产品);
主页:

资料来源:


教程链接

自动映射是一个可用的库,它可以为您进行对象到对象的映射

使用AutoMapper,您的代码可以简化为

Mapper.CreateMap<Datalogic , Businesslogic >();
Product product= GetProductFromDB(2);
Businesslogic productViewItem = Mapper.Map<Datalogic , Businesslogic >(product);
Mapper.CreateMap();
Product Product=GetProductFromDB(2);
Businesslogic productViewItem=Mapper.Map(产品);
主页:

资料来源:


教程链接

太棒了,只剩下一个问题。如果映射在类库中使用,我在哪里定义映射?太好了,只剩下一个问题。如果映射在类库中使用,我在哪里定义映射?