【发布时间】:2009-07-13 19:44:27
【问题描述】:
我需要在 DTO 中填充一个集合属性,但我无法找到有关执行此操作的任何信息。
我试着这样做:
ICriteria selectCriteria = Session.CreateCriteria<DataRun>()
.SetProjection(Projections.ProjectionList()
.Add(Projections.Property("SomeCollection"), "Collection"))
.SetResultTransformer(Transformers.AliasToBean<MyDto>());
但 MyDto.Collection 始终为空。我做错了吗,这甚至可能吗?
另外,我最初计划使用子查询来执行此操作,因此我可以用其他 DTO 填充我的 DTO 集合,但这不起作用,因为子查询的结果有超过 1 行(应该如此),而 Sqlit 确实如此不像那样(抛出异常)。在这里做什么是正确的?
【问题讨论】:
-
我认为你正在尝试做一个应该在你的映射中完成的一对多,但我不太确定。你能发布你的映射文件吗?
-
我正在做一对多,我的映射实体可以正常工作,但我不想让我的映射实体回来,我想要一个具有一堆属性的 DTO以及哪些不是特定于它们将用于的视图。
标签: c# nhibernate orm dto