c# - 使用 AutoMapper 将值从 object1 复制到 object2

标签 c# automapper

我有 Person 类

public class Person
{
   public int PersonID { get; set; }
   public string FullName { get; set; }
   public int InternalValue { get; set; }
}

而且,这是我的 DTO 类

public class PersonDto
{
   public int person_id { get; set; }
   public string full_name { get; set; }
}

我正在使用 AutoMapper 和 AutoMapper.Attributes 来执行映射,如下所示;

[MapsTo(typeof(Person))]
public class PersonDto
{
   [MapsToProperty(typeof(Person), "FullName")]
   public int full_name { get; set; }
}

我有一个 API,它接受 PersonDto 并使用 Entity Framework 保存到数据库中。请注意,InternalValue 在 DTO 类中不可用,它是一个 secret 值 :)。

我的问题是; 是否有可能使用 AutoMapper 将值从 PersonDto 对象复制到 Person 对象?我发现了一些类似的问题,但找不到明确的答案。

在此先致谢,非常感谢您的帮助。

最佳答案

要从 PersonDto 映射到 Person,您需要配置属性以允许反向配置。

将属性更改为如下所示:

[MapsTo(typeof(Person), ReverseMap = true)]

这将允许为 PersonDto -> Person 调用 AutoMapper,要了解更多信息,您可以查看项目的自述文件 here .

关于c# - 使用 AutoMapper 将值从 object1 复制到 object2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43712681/

相关文章:

c# - 行的最小高度 [Migradoc]

c# - automapper - 如何映射对象列表

C# List.Clear() 方法没有得到正确的响应

AutoMapper:ForMember 和 ForSourceMember 之间有什么区别?

c# - 将多个来源合并到一个目的地

c# - 使用linq和automapper在dto中将属性序列化为复杂类型

c# - 我们如何在一行中调用多个可选函数?

c# - 将按钮的事件订阅到自定义控件中

c# - 将自签名证书与 .NET 的 HttpWebRequest/Response 结合使用

c# - 小数位的 XAML StringFormat 语法