【发布时间】:2010-09-17 20:01:03
【问题描述】:
我有一个名为 Incident 的实体和一个名为 IncidentDTO 的 DTO。目前,IncidentDTO 看起来像这样:
public class IncidentDTO : Incident
{
// empty until I can get AutoMapper working correctly
}
我正在尝试提取数据库中所有 Incidents 的列表,并使用以下代码将它们转换为 DTO:
Mapper.CreateMap<Incident, IncidentDTO>();
using (var session = SessionFactory.OpenSession())
{
var incidents = session.Linq<Incident>();
var incidentDTOs = Mapper.Map(incidents, new List<IncidentDTO>());
}
这段代码运行良好,但当我使用 NHProf 查看正在生成的 SQL 语句时,我得到了这个:
SELECT ... FROM [Incident] this_
SELECT ... FROM [Incident] this_
这两个 SELECT 语句完全相同。为什么 AutoMapper 会生成两个相同的 SELECT 语句,我该如何防止它这样做?
【问题讨论】:
标签: sql nhibernate automapper projection