我决定将我的项目 ASP.NET MVC 4 中的 CaSTLe ActiveRecord 版本从 2.1.2 版本迁移到 3.0.0。还更新了 NHibernate 2.1.2 版本到 3.1.0 版本。我的 ActiveRecordLinq 项目有几个查询(有必要更新对 CaSTLe.ActiveRecord.Framework 的引用),如下例所示:
public IList <City> ReturnCities()
{
IList <City> units = (from u in ActiveRecordLinq.AsQueryable<City>()
where (u.Id <= 52 || u.Id.Equals(900))
select u).ToList<City>();
return units;
}
更新开始后会发生以下异常:
NHibernate.dll 中发生了“System.NotSupportedException”类型的异常,但未在用户代码中处理
附加信息: bool 等于 (Int32)
如果我将“等于”替换为“==”,则查询有效,但在 CaSTLe ActiveRecord 的 2.1.2 版中,“等于”通常有效。
我需要有关如何在不替换“Equals”项目的情况下解决此问题的帮助。
最佳答案
该错误可能有解决方案...请参阅 https://nhibernate.jira.com/browse/NH-3129如果它适用于您的情况。
问题是我还没有找到与 NH 3.3.3 兼容的 ActiveRecord 库。
关于c# - 城堡 ActiveRecord 3 : ActiveRecordLinq queries using Equals not work,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25799979/