nhibernate相关内容
我认为在实现 LinqToHql 生成器类时我缺少一些基本的东西. 我已经使用自定义方言通过此注册成功注册了 SQL Server 2008 contains 查询: RegisterFunction("contains", new StandardSQLFunction("contains", null)); 我只有一个类需要查询全文索引: 公共类 SearchName{公共虚拟 G
..
有人使用 AppFabric 进行二级缓存吗? 我知道它遵循与 Velocity 相同的 api (nhibernate.caches.velocity) 但想知道是否有人已经有使用它的一些生产经验,以及他们是否知道任何特定的技巧或问题? 解决方案 我目前知道的唯一问题是 这个问题,Velocity 缓存代码中的引用已过时,需要更新到 AppFabric v1 发布程序集.
..
我是 NHibernate(和 ORMS)的新手,并试图掌握它提供的无数不同选项.作为参考,我将 Fluent NHibernate 与单独的业务对象一起使用,而这些对象又将 DTO 纯粹用于数据访问.我的应用程序架构必须同时支持 windows 和 web“前端". 我的困惑是一种通用方法,因为似乎有很多选择.我的 DTO 看起来像下面的示例.每个 DTO 都有对从 BO 传递给它们的 I
..
我想要做的是显示一个简单的数据网格,其中包含实体数据及其子项的聚合数据.例如,让我们使用订单和订单项.我想显示订单信息,以及订单项的数量. 订单 ID、订单日期、NumOfLineItems 现在通常在 SQL 中,您可以通过多种方式实现.但这是我能想到的在翻译到 NHibernate 时可能有效的唯一方法. SELECT o.OrderID、OrderDate、NumOfLineI
..
我正在使用 NHibernate 3.1.0 并且我正在尝试通过使用 BaseHqlGeneratorForMethod 并扩展 DefaultLinqToHqlGeneratorsRegistry 来扩展 LINQ 提供程序,如Fabio 的帖子. 例如,为了支持 ToString(),我创建了一个 ToStringGenerator,如下所示. 内部类 ToStringGenerato
..
我发现使用 NHibernate 甚至 Castle 比使用 Linq to Entities 或 linq to SQL 可以做的更多. 我疯了吗? 解决方案 不,你没有疯.nHibernate 是一个完整的 OR 映射器,Linq to SQL 和 Linq to Entities 并没有实现您对 OR 映射器所期望的一切,并且针对的是稍微不同的开发人员群体. 但是不要让那
..
NHibernatians! 我有一个表 [dbo].[Wibble] 和另一个表 [dbo].[WibbleExtended]. [Wibble] 是主表,[WibbleExtended] 是可选表,其中存储了一些其他字段.[WibbleExtended] 表中的条目比主 [Wibble] 表中的条目少得多.我认为这是为了解决一些空间问题(Wibble 有很多行而 WibbleExt
..
如何使用 QueryOver 而没有公式字段执行以下操作. 我有以下父子关系 公开课俱乐部{公共字符串名称 { 获取;放;}公共 IList会员{获得;放;}}公开课会员资格{公共布尔取消{得到;放;}公共俱乐部俱乐部{得到;放;}} 我有以下查询,该查询返回 15 个俱乐部并将结果转换为 DTO,我需要向此查询添加属于每个俱乐部且未取消的会员的 RowCount. IEnumerab
..
我发现很多帖子都解释说应该始终覆盖 NHibernate 实体类上的 Equals/GetHashCode.如果我不使用 Sets,这真的有必要吗? 我根本找不到一个示例,表明缺少 Equals/GetHashCode 会导致意外和错误的行为.如果没有它们,一切似乎都可以完美运行.这真的很奇怪,每个人都说这是必要的,但没有人可以提供一个示例来说明为什么需要这样做. 解决方案 有一个
..
在 NHibernate 3.0 中,FlushMode.Auto 在仅在环境事务下运行时不起作用(即,不启动 NHibernate 事务).应该吗? using (TransactionScope scope = new TransactionScope()){ISession session = sessionFactory.OpenSession();MappedEntity entity
..
我听到的关于 NHibernate 延迟加载的大部分内容是,使用它比不使用它更好.为了减少瓶颈,最小化数据库访问似乎是有意义的.但是很少有事情是不折不扣的,当然它通过强制您拥有 virtual 属性来稍微限制了设计.但我也注意到一些开发人员对某些常用对象关闭了延迟加载. 这让我想知道是否在某些特定情况下使用延迟加载会损害数据访问性能. 所以我想知道,我应该在什么时候以及在什么情况下避免
..
我需要帮助在 NHibernate 3 主干版本中使用 Linq 进行急切加载. 我有这样的多对多关系: 公共类Post{公共整数 ID {get;set;}公共 IList标签 { 获取;设置;}...} 现在我在 Fluent NHibernate 中有以下映射 公共类 PostMap:ClassMap{公共邮政地图(){Table("帖子");Id(x => x.Id);..Ha
..
是否可以使用 Criteria 执行 t-sql 命令来选择表中某列的最大值? '从客户中选择@cus_id = max(id) + 1' 他 奥利 解决方案 使用 投影: session.CreateCriteria(typeof(Customer)).SetProjection(Projections.Max("Id")).唯一结果();
..
我尝试加入,但不断收到此错误 预期加入的路径![选择t.CourseId FROM Task as t INNER JOIN课程为 c,课程权限为 cp哪里 (t.CourseId = 1)] 我有 const string query = "SELECT t.CourseId FROM Task as t INNER JOIN Courses as c, CoursePermiss
..
这是我的情况.. 假设您有以下模型实体,它们单独代表单个表: 电影 [电影 ID、标题、评分、..] 演员 [演员 ID、名字、姓氏、..] 导演 [导演_ID、名字、姓氏、..] 另一个实体/表称为“推荐",表示网站内用户之间的推荐.这个想法是推荐可以是任何类型,即有人推荐演员,或有人推荐电影.基本上,该表应如下所示: 推荐 [ Recommendation_Id, Ob
..
我有一个名为 EmployeeEntity 的简单实体,其属性为 ID、Name、Age、Organisation 和 指定.我只是使用查询 查询数据库 IQuery 查询 = session.CreateQuery(“从员工实体中选择姓名、职位、年龄、组织" +“按姓名、职位、年龄、组织分组");IList员工 = query.List();//抛出错误 但是在转换为我的类型时,它会引发异
..
当您创建映射文件时,您是否将属性映射到字段或属性: [...]
..
我对使用 NHibernate Mapping By Code 时的 Cascade 枚举选项行为有疑问. Enum 有以下选项: [标志]公共枚举级联{无 = 0,坚持= 2,刷新 = 4,合并 = 8,删除 = 16,分离 = 32,重新连接 = 64,删除孤儿 = 128,全部 = 256,} 它们旨在用作位标志组合(据我所知). 我查看了 NHibernate 文档,其中定
..
Session.Save 和 Transaction.Commit 有区别吗? 我什么时候应该使用哪个? 似乎有时Session.Save必须与Transaction.Commit结合使用,有时不需要.谁能告诉为什么会这样? 解决方案 他们是不同的——Session.Save 保存一个对象,Transaction.Commit 提交一堆工作(多次获取、加载、保存、更新等).
..
由于所有依赖关系,NHibernate 并不真正适合我们的环境.(城堡、log4net 等) 有没有好的轻量级替代品? 必须支持简单的基于文件的数据库,例如 Access/SQLite/VistaDB. 理想情况下,包含在仅引用 .NET 程序集的单个程序集中的内容.如果它只需要 .NET 框架 2.0 或 3.0,那就更好了. 解决方案 一般来说,要使您的数据库后端与
..