问题标签 [castle-activerecord]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1024 浏览

castle-activerecord - 使用 Castle Active Record 的表前缀

有没有在配置时使用 Castle Active Record 为表名添加前缀?

我希望创建/引用的实际表是“PRODAddress”或“DEBUGAddress”。有什么我没有看到的内置的吗?

谢谢,

[编辑] 我在下面标记了一般答案,但这里是为 Castle Active Record 实现表前缀的实际代码:

0 投票
2 回答
528 浏览

.net - Castle.ActiveRecord 中的大型 OR 表达式

我正在尝试在活动记录中进行伪模糊逻辑查询。

我该如何表达:

field1 像'A' 或 field2 像'A' 或 field3 像'A' 或 field1 像'B' 或 field2 像'B' 或 field3 像'B'

使用 ICriteria 对象......“喜欢”需要是 InsensitiveLikeExpressions 吗?

0 投票
3 回答
1665 浏览

nhibernate - 如何运行使用 nHibernate 返回未映射对象列表的 HqlBasedQuery?

我想对两个表(恰好在 ActiveRecord 中映射)运行查询。该查询返回一个无法映射到 ActiveRecord 对象的结果列表(因为它是自定义聚合信息)。

例如

Dim query_str as string = "Select distinct d.ID, (select count(1) as exp from Sales_Leads where date_created <= :todays_date) as NbrLeads from Dealer d"

Dim q As Queries.HqlBasedQuery = New Queries.HqlBasedQuery(GetType(ICollection), query_str) q.SetParameter("todays_date", DateTime.Today) Dim i As ICollection = ActiveRecordMediator.ExecuteQuery(q)

我正在寻找的是简单的 SQL 执行,没有返回 ActiveRecord 对象。

因此,理想情况下,我可以查看集合中每个项目的 i("NbrResults") 。

我得到的错误是:

您访问了一个未正确初始化的 ActiveRecord 类。唯一的解释是对 ActiveRecordStarter.Initialize() 的调用不包括 System.Collections.ICollection 类

0 投票
2 回答
899 浏览

wcf - 将 Castle ActiveRecord/NHibernate 与 WCF 一起使用时是否有任何问题?

Activerecord 为我们的数据库设计提供的那种灵活性,我们正在为我们的 DAL 寻找它并围绕它构建模型。我们将在这一切之上创建一个 WCF 服务。使用基于 NHibernate 的 Castle Activerecord 时是否有任何问题或兼容性问题?特别是当涉及到 WCF 使用的 DataContractSerializer 时。既然 ActiveRecord 不会使用 IQueryable,是不是太错过了?

0 投票
3 回答
3271 浏览

c# - nHibernate (w/ Castle ActiveRecord) 与 C# 接口 (esp for DTO's)

是否将 nHibernate 与从通用接口实现的域对象和 DTO 对象一起使用?我试图将我所有的 nHibernate 属性分离到 Domain 对象中,让我的 DTO 和界面保持干净。

当 nHibernate 尝试将接口与具体类相关联时,会出现问题。

NHibernate.MappingException:关联引用未映射的类:IContact

我理解为什么它抱怨使用非休眠界面,但我正在努力寻找一种围绕它进行重组的方法。我的代码的骨架复制如下所示,关于如何更好地构建我的代码的任何想法?

编辑:

我想要一个通用接口,这样我就可以确保它们保持相同的字段(即依靠编译器来保持它们的一致性)。它还允许我在应用程序的视图部分中使用 DTO,但将它们转换为域对象以进行业务和数据访问。此外,alex 的解决方案不起作用,因为 ICompany 的联系人是 IList 类型,而不是 IList。我想将其保留为 IContact,因此我的 DTO 对象不知道 Contact Domain 对象。

0 投票
1 回答
478 浏览

castle-activerecord - 如何在中等信任托管中运行城堡 activerecord?

我已按照指南生成代理,但出现以下安全异常

我该如何纠正这个?

0 投票
1 回答
120 浏览

nhibernate - 如何在 Castle ActiveRecord 查询中返回一组有限的列?

并让它映射到强类型对象?

假设我有一个带有 Id、Name、Posted、IsUglyFace、YerMom 的实体博客

但我只想要/需要 Name 和 Posted 列。我试图做类似的事情:

IList blogs = repository.SimpleQuery("select Name, Posted from Blog");

这会输出大量 SQL 并返回错误,无法映射到给定对象。

0 投票
2 回答
803 浏览

nhibernate - 如何取回使用 Castle 的 ActiveRecord 查询多个实体的强类型集合?

我正在尝试获取一组特定的数据,同时将 4 个不同的实体连接在一起。我所做的是设置一个 DTO 来尝试让它工作:

现在我想我可以像这样使用 SimpleQuery:

返回 repository.SimpleQuery(0, 10, hql);

我的存储库方法如下所示:

现在它要求我将 [ActiveRecord] 放在我的 LatestThread 类的顶部。当我这样做时,它需要一个主键,这似乎是错误的路线。

我还阅读了一些引用赋予非 DTO 类的 Import 属性的位。在所有示例中,虽然它只是加入了两个实体,而不是我拥有的 4 个。我需要将 Import 添加到所有 4 个吗?或者有什么可以告诉 AR 它是一个只读的 DTO 类?或者我做这一切都错了,有一种非常简单的方法可以做我想做的事情。

蒂亚!

0 投票
1 回答
899 浏览

c# - 如何在 Castle Active Record 中执行“ExecuteNonQuery”

我有以下代码通过我们的活动记录 ORM 层执行数据库级操作。

通常,当我需要进行这样的非查询时(我承认这非常罕见),我简单地输入一个 select '1'; 在足够安抚 Active Record 以将查询作为非查询执行的查询之后。

但是,postgres 'vacuum' 命令必须单独运行,并且不能作为多语句查询的一部分。

看 ISQLQuery 接口,似乎没有执行非查询的方法,所以我想知道如何做到这一点?

0 投票
2 回答
1446 浏览

.net - 如何将 XMLSerializer 与包含 IList 的 Castle ActiveRecord 一起使用成员

我正在尝试将 XMLSerializer 与如下所示的城堡活动记录类一起使用:

但是,由于 IList 接口,XMLSerializer 遇到了麻烦。(引发异常:无法序列化类型为“System.Collections.Generic.IList`1....”的成员“DataModel.Documents”

我在其他地方读到这是 XMLSerializer 的一个限制,推荐的解决方法是将其声明为List<T>接口。

因此,我尝试将其更改IList<Document>List<Document>. 这会导致 ActiveRecord 引发异常: 属性 DataModel.Documents 的类型必须是一个接口(IList、ISet、IDictionary 或它们的通用计数器部分)。您不能使用 ArrayList 或 List 作为属性类型。

所以,问题是:如何将 XMLSerializer 与包含 IList 成员的 Castle ActiveRecord 一起使用?