.net – 什么是Automapper?
发布时间:2020-05-28 01:33:21 所属栏目:asp.Net 来源:互联网
导读:什么是 Automapper?它将如何帮助我的域和控制器层(asp.net mvc) 也许一个例子会帮助这里… 假设你有一个很好地规范化的数据库模式,如下所示: Orders (OrderID, CustomerID, OrderDate) Customers (CustomerID, Name) OrderDetails (OrderDetID, OrderID, P
|
什么是 Automapper?它将如何帮助我的域和控制器层(asp.net mvc) 解决方法也许一个例子会帮助这里…假设你有一个很好地规范化的数据库模式,如下所示: Orders (OrderID,CustomerID,OrderDate) Customers (CustomerID,Name) OrderDetails (OrderDetID,OrderID,ProductID,Qty) Products (ProductID,ProductName,UnitPrice) 而且我们假设你使用的是一个漂亮的O / R映射器,它可以让你回到一个组织良好的领域模型: OrderDetail +--ID +--Order |--+--Date |--+--Customer |-----+--ID |-----+--Name +--Product |--+--ID |--+--Name |--+--UnitPrice +--Qty 现在,您需要显示上个月订购的所有内容。你想绑定到一个平面网格,所以你尽可能地写一个平面类来绑定: public class OrderDetailDto
{
public int ID { get; set; }
public DateTime OrderDate { get; set; }
public int OrderCustomerID { get; set; }
public string OrderCustomerName { get; set; }
public int ProductID { get; set; }
public string ProductName { get; set; }
public Decimal ProductUnitPrice { get; set; }
public int Qty { get; set; }
public Decimal TotalPrice
{
get { return ProductUnitPrice * Qty; }
}
}
到目前为止这是非常痛苦的,但是现在呢?我们如何将一堆OrderDetails转换成一堆OrderDetailDtos进行数据绑定? 您可以在OrderDto上放置一个构造函数,该构造函数需要一个OrderDetail,并写出一大堆映射代码。或者你可能在某处有一个静态转换类。或者,您可以使用AutoMapper,并写入: Mapper.CreateMap<OrderDetail,OrderDetailDto>();
OrderDetailDto[] items =
Mapper.Map<OrderDetail[],OrderDetailDto[]>(orderDetails);
GridView1.DataSource = items;
那里。我们刚刚采取了一个令人厌恶的无意义的映射代码混乱,并将其简化为三行(实际映射中只有两个)。 这有助于解释目的吗? (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – 不引用MVC的AllowHtml属性
- .net – 制作类似TinyURL.com的简短网址
- 如何杀死会话或会话ID(ASP.NET/C)
- ASP.NET MVC中的基本认证5
- .net – WebApi传输字节数组为空
- asp.net-mvc – ASP.NET MVC DropDown编辑器模板
- asp.net – 当你不能使用ViewState时你会怎么做?
- asp.net-mvc-3 – ASP.NET MVC重定向到没有物理重定向的操作
- asp.net-mvc-4 – ASP.NET Web API的自定义MVC AuthorizeAt
- asp.net – 在IIS中,existingResponse =“PassThrough”是什
推荐文章
站长推荐
- asp.net – 删除HTML或ASPX扩展
- asp.net-mvc – Asp.net MVC查看测试?
- 有没有办法通过ASP.NET和app_offline.htm来显示图
- asp.net-mvc – ASP.net 5 MVC 6 bower.json和pr
- asp.net-mvc – MVC 2 vs MVC 3自定义验证属性使
- asp.net-mvc-5 – 在MVC 5期货中找不到Html.Seri
- asp.net – “viewstate MAC的验证失败.如果这个
- 做一个ASP.NET网站的更改杀死活动会话?
- asp.net-mvc – 使用AJAX绑定时,在创建/更新后IE
- asp.net-mvc – ASP.NET MVC路由Maproute参数
热点阅读
