1.AutoMapper简单介绍
官网:http://automapper.org/
源码:https://github.com/AutoMapper/AutoMapper
NUGET安装:
PM> Install-Package AutoMapper
AutoMapper给用户提供了便捷的配置API,就像使用约定来完成自动映射那样。
AutoMapper包含以下功能:
平展、投影、配置验证、列表和数组、嵌套映射、自定义类型转换程序、自定义值转换程序 、自定义值格式程序 、Null值替换
AutoMapper是一款单向映射器。
这意味着它并没有内建映射对象支持来回写至原始源,除非用户在更新映射对象之后明确地创建逆向反射。
这需要 通过设计完成,因为让DTO回写到,比方说:域模型或其他东西,就会更改它的持久性,同时人们也认为它是反模式的。在这种解决方案中,命令消息在双向映射 中往往是更好的选择。
然而,在某些特定环境中,有人可能会为双向映射辩解,比如:非常简单的CRUD应用程序。一个支持双向映射的框架就是Glue。
AutoMapper 解决什么需求
话不多说,上代码,共有两个实体类
class People{
publicstring Name { get; set; }publicint Age { get; set; }}
class Person{
publicstring Name { get; set; }publicint Age { get; set; }}
假设在项目中有此需求,将两个类的数据进行交换,我们通常的做法是
staticvoid Main(string[] args){
People p
= new People() { Name = "text1", Age = 12 };Person person
= new Person();person.Name
= p.Name;person.Age
= p.Age;
Console.WriteLine(person.Name);
Console.WriteLine(person.Age);
Console.Read();
}
但是我们发现,这样费力不讨好,而且我们还发现,这两个类里面的属性其实是近似的,所以,AutoMapper就是为了应对这种情景
以上是 1.AutoMapper简单介绍 的全部内容, 来源链接: utcz.com/z/531906.html