Nhibernate SetForceCacheRefresh?

如何从数据库中重新读取某些(类)项?我读过一次,也做过同样的更新,更新我不想保存。现在,我需要从数据库中收集完整的新项目 我注意到有一个名为SetForceCacheRefresh的函数,但是如何将它与CreateCriteria一起使用呢 //MatsIList list=null; IList<T> list = null; using (Repository rep = new Repository())

NHibernate 2.1代理工厂选项-有什么区别以及选择什么?

NHibernate2.1下载附带3个代理工厂类,可用于启用延迟加载 城堡 临福 弹簧 它们之间的区别是什么?在特定场景中我应该使用哪一种?您可以在此处阅读更多关于它们的信息: 及 基本上在这一点上,主要的事情是:只需选择一个,然后完成:)

NHibernate Fluent和命名查询

我正在用流利的Nhibernate。 现在我想调用一些存储过程并使用命名查询。 我创建了一些xml: <?xml version="1.0" encoding="utf-8"?> <hibernate-mapping> <sql-query name="CleanAppendicesHierarchies"> exec intf_CleanUpAppendixHierarchy </sql-query> </hibernate

如何最好地检索和更新NHibernate中的这些对象?

我之前询问过关于用户、项目和用户评级情况建模的问题。在我的示例中,用户评级与一个用户和一个项目相关。Nathan Fisher给出了一个很好的答案,我在下面介绍了他建议的模型 但我现在有一个关于检索这些对象的问题。 该模型通过保存对实体的引用来链接实体。我的问题是,如何最好地检索要更新的特定用户等级?在这种情况下,我将拥有用户ID(来自asp.net auth会话)、和项目ID(来自URL)。此外,每个用户或项目可能有1000个评级 回到老派,这就像一个更新查询“其中x=userID和y=ite

Nhibernate 我怎样才能使用;表达式.Not“;有文本字段吗?

如何在文本字段中使用“Expression.Not” 我需要从NHQuestionCount中选择除“ktest”之外的所有记录 例如,此代码返回运行时错误 NHQuestionCount[] stats = NHQuestionCount.FindAll(Order.Asc("NameFull"), Expression.Not(Expression.Eq("NameFull", "ktest"))); 我不能对代码的其余部分发表评论,但您对表达式的使用是完全正确的

NHibernate无法加载代理工厂

我一直在尝试运行一个简单的NHibernate应用程序。我正在一步一步地做“NHibernate入门”。 首先,我得到了一个无效的属性something error(设法修复了它) 现在,我得到一个例外: 无法加载类型“NHibernate.ByteCode.Castle.proxyFactory,NHibernate.ByteCode.Castle” 在配置代理工厂类期间。 可能的原因是: -未部署NHibernate.字节码提供程序程序集。 -用于初始化会话工厂部分的“proxyfactor

NHibernate域模型-将子对象添加到集合

我还在这里学习,对儿童收藏有疑问。我有一个名为Audio的聚合根,它有一个AudioDownloads集合 下载是下载音频的每个IP地址的记录,我不希望每个音频都有相同IP的重复记录 在我的域中,我具有以下功能: public virtual void Add(AudioDownload download) { if (!AudioDownloads.Contains(download)) { TotalDownloads++;

Nhibernate Castle活动记录中的会话管理

如果我在nHibernate上使用Castle Active Record,如何管理会话。如果我直接使用nHibernate,我基本上可以自己管理ISession的生命周期。但是当我使用Castle AR时,它并没有给我一种管理会话生命周期的方法。我希望每个线程使用一个会话 我正在WCF服务中使用Castle AR,希望根据WCF请求使用会话。我假设您正在使用web应用程序。不是这样吗 有几种方法可以做到这一点- 最简单的方法是使用SessionScopeWebModule为每个请求提供一个会

Nhibernate升级了使用*=

所以我们升级到更新的Nhibernate和流畅的Nhibernate 现在我得到了一个例外: FailedNHibernate.Hql.Ast.ANTLR.QuerySyntaxException:引发了类型为“ANTLR.Runtime.NoviableException”的异常。第1行第459列附近 在这个hql上,它在升级之前工作得很好 选择s.StudId、s.StudLname、s.StudFname、s.StudMi、s.Ssn、s.Sex、s.Dob、et.EnrtypeId、et

如何管理NHibernate单元测试中的会话?

我有点不确定如何在nunit测试装置中管理会话 在下面的测试夹具中,我正在测试一个存储库。我的存储库构造函数接受ISession(因为我将在web应用程序中使用每个请求的会话) 在我的测试夹具设置中,我配置NHibernate并构建会话工厂。在测试设置中,我为执行的每个测试创建一个干净的SQLite数据库 [TestFixture] public class SimpleRepository_Fixture { private static ISessionFactory _se

NHibernate中的SQL 2008分层支持

搜索了各种NHibernate列表,还没有找到一个明确的答案。似乎不支持HierarchyID数据类型-仅支持新的日期和时间类型 是否有人有良好的实施或有效的解决方法?我真的很想在我的新应用程序中利用HierarchyID。MS自己的工具严重缺乏对这种有趣且功能强大的数据类型的支持,因此我对NHibernate没有支持并不感到震惊 还有一些我还没有深入研究过的东西。想知道是否有人在哪些方面有经验,哪些方面更有效,等等 全面披露:我正在使用Castle ActiveRecord,但这似乎是一个NH

Nhibernate-分页和即时加载实体

我有两个实体,一个团队和一名员工 我想得到一份员工名单,上面有一个充满热情的团队。该列表必须分页 public PagedList<Employee> GetAllEmployeesWithEagerLoadedTeams(int page, int pageSize) { var criteria = GetSession() .CreateCriteria(typeof (Employee)) .SetFetchMode(DomainMod

NHibernate映射-通过表多对一

我正在使用一个具有以下结构的现有数据库。更改数据库模式是最后的手段 Products Id Name ParentProducts ParentId ChildId 我不想为ParentProducts创建一个实体,我为children属性提供了以下内容(仍然需要对其进行测试,但这就是概念) 我正在努力解决的是如何创建父属性?我想做如下操作,但table不是多对一的有效属性 <many-to-one name="Parent" column="[Parent

NHibernate中的多个类映射类

在fluent nhibernate中,一个表有多个映射,这可能吗?假设我有一个用户表 曾经我希望它的apped与UserMap1.cs文件中的完全相同,有时我更喜欢从UserMap2.cs进行映射 我不需要在应用程序运行时切换配置。一开始我只需要选择一个合适的 提前感谢:-这可能是一个黑客攻击,但您可能会将两个映射放在不同的名称空间中。然后,您可以根据需要从一个名称空间或另一个名称空间添加映射。您使用的是Fluent NHibernate,因此很可能使用mappings.FluentMappi

Nhibernate 不带FROM和WHERE子句的HQL语句

我正在尝试从调用数据库函数。HQL语句应该只调用函数并返回其值,如下所示 select someFunction(:someParameter) 如果我尝试调用selectcurrent\u timestamp() 它失败了 NHibernate.Hql.Ast.ANTLR.QuerySyntaxException:引发了类型为“ANTLR.Runtime.MismatchedTreeNodeException”的异常。第1行第24列附近[选择当前时间戳() 我知道检索当前时间戳的理由不多。但

Nhibernate nhibenrate中的多行更新

所以我想知道是否最好使用hql查询更新数据库中的多行,或者在修改每个对象后调用nhibernates save。。我知道答案是HQL查询,但请给我足够的理由。 但是使用HQL查询权限有一些缺点,比如我的API对模型有很强的依赖性,如果属性名称有任何更改,我必须显式地记住这个查询的存在 因此,如果是的话,请量化利弊 谢谢。等待您的回答。如果您将HQL update语句声明为命名查询,NHibernate将在构建会话工厂时对其进行验证,如果出现任何错误,将抛出。因此,如果您曾经更改属性名称,而忘记更

NHibernate序列化问题-类型';NHibernate.Cfg.Configuration';未标记为可序列化

我正试图通过序列化NHibernate.Cfg.configuration对象(如中所述)来提高使用NHibernate的C#Winforms应用程序的启动时间,但我在尝试序列化时遇到以下错误: System.Runtime.Serialization.SerializationException :键入“NHibernate.Cfg.Configuration” 在“NHibernate”中, 版本=1.2.1.4000,区域性=中性, PublicKeyToken=aa95f207798df

Nhibernate 为什么我的HQL查询可以工作,但条件版本不能';T

我的(流利的)NHibernate模式有点复杂。这里讨论的两个类都是特定于国家的,并且继承自一个抽象类。这背后的要点是不同的国家数据存储在不同的表中。这一切都很好,除了以下几点。此HQL执行良好: dbSession.CreateQuery(@"from DateBlock_US db where db.HaveListing.City.LocationID = " + searchLocation.LocationID.ToString()).List<DateB

使用查询的NHibernate(3.1.0.4000)NullReferenceException<&燃气轮机;和NHibernate设施

我对NHibernate有问题,我似乎找不到任何解决方案。 在我的项目中,我有一个简单的实体(批处理),但是每当我尝试运行下面的测试时,我都会得到一个异常。 我尝试了两种不同的方法来执行类似的查询,但几乎所有的查询都有相同的异常(执行LINQ方法的方式不同) 第一个测试: [Test] public void QueryLatestBatch() { using (var session = SessionManager.OpenSession()) { var

Nhibernate一对多删除不起作用

嗨,我有一个一对多合规集->合规项。ComplianceItem具有一对多ComplianceItem->ComplianceItemInstance 我有 顺应集 HasMany(x=>x.GetUserComplianceItems()).Inverse().Access.CamelCaseField(前缀.下划线).LazyLoad().Cascade.AllDeleteOrphan(); 及 顺应性 HasMany(x=>x.GetUserComplianceItemInstances

NHibernate-三个类之间的三个双向关系给出N+1

我有一个有点复杂的物体模型,形成一个三角形。有一个用户实体,它具有项和分类的集合。项目也有一个分类法。为了方便起见,我希望Item和Taxonomy知道它的所有者,Taxonomy知道它的项(如果有的话)。见图表: 这就形成了三个双向关系。我的问题是,当我像这样在NHibernate中映射它并要求用户使用给定的ID时,我遇到了问题 首先,用户被加载了急切获取的项目。然后,分类法会加载与之连接的急切获取的项。这是预期的,也是映射中定义的。但是现在有N+1个查询来加载与分类法相关的项 这是多余的,因

Fluent NHibernate:将属性应用于通过组件映射的属性的所有成员

我正在使用Fluent NHibernate(1.2),并且正在致力于实现列级加密。我有一个处理加密的自定义类型,因此域模型可以有原生的明文数据类型(简单字符串、int、datetime等),所有的加密/解密工作都在幕后进行 我希望通过属性指定每个域模型中要加密的属性,并使用约定指定这些属性的自定义类型,以便域模型是良好的POCO,而不提及自定义类型: public class EncryptedAttribute : Attribute {} public class UserRecord

Nhibernate SaveOrUpdate正在尝试将NULL插入主键字段

我正在使用Sharp体系结构创建一个小应用程序,但我遇到了一个无法解决的错误。我认为这与NHibernte映射有关。在HttpPost Create()方法中,SaveOrUpdate调用试图将null插入表的主键字段。我的模型中主键的声明是公共虚拟int-Id{get;protected set;} 我查了一下新闻纸,Id是零。我认为问题出在我的NHibernate映射上,所以我在下面列出了所有这些 以下是自动映射配置: public class AutomappingConfiguratio

Nhibernate 为什么ICriteria不将变量值传递给WITH子句?

我试图用一个简单的限制来限制左外部联接,但由于sql异常而失败 System.Data.SqlClient.SqlException:必须声明标量变量@p1 我的ICriteria: var r = session.CreateCriteria<Parent>("p") .CreateCriteria("p.Children", "c", NHibernate.SqlCommand.JoinType.LeftOuterJoin, Restrictions.Eq("c.Name",

Nhibernate 仅当关联表具有空记录时,此计数为N的SqlParameterCollection的索引N无效

我有一个相当复杂的实体,当一个特定的数据库表缺少一条记录时,它不会保存。当记录存在时,实体将正确保存。当记录未显示时,我收到异常: 此计数为N的SqlParameterCollection的索引N无效 在阅读了通过Google找到的一系列解决方案以及与堆栈溢出最密切相关的问题后: 我相信我的问题与我设置映射文件的方式有关。客户实体引用了个人实体。Person映射到一个表,我们已对该表进行了读取,但未对其进行写入访问。当Person实体的记录不存在时,我生成异常。如果记录存在,则没有问题。

如何在保存之前检查nHibernate和DDD中的唯一约束冲突?

我有一个帐户模型对象和帐户名称的唯一约束。在域驱动设计中,使用nHibernate,在插入或更新实体之前,我应该如何检查名称的唯一性 我不想依赖nHibernate异常来捕获错误。我想向用户返回一条比模糊的无法执行批处理命令更漂亮的错误消息。[SQL:SQL不可用] 在这个问题上,有人建议使用这样的规范 Account accountA = _accountRepository.Get(123); Account accountB = _accountRepository.Get(456); a

nHibernate条件查询使用分页生成重复项

nHibernate 2.1版 从大量类似的问题中可以看出,我们并不是唯一遇到分页生成重复项问题的人。我们认为这只是HQL查询的结果,但我们的一个客户报告说,在查询是条件查询的地方看到了它 到目前为止,我们只在报告方面看到了它——我们倾向于从各种“关联”实体收集信息,并使用AliasToBeanTransformer将其放入DTO(DataTransferObject)中: .SetResultTransformer(新别名为BeanResultTransformer(类型为(OurDTO)))

nHibernate和QueryOver序列化以供Web服务处理

是否可以通过nHibernate生成查询,序列化条件/DetachedCriteria,将其发送到外部服务进行处理,并使结果几乎替换查询版本,或者至少插入查询版本 比如说: return _session .QueryOver<VirtualFolder>() .Where(m => m.Name = "FolderName" & m.Parent = folderParent) .SingleOfDefault(); 将导致查询有效地传

NHibernate查询缓存过期

是否可以配置NHibernate查询缓存的过期时间 对于二级缓存,我可以从nhibernate.cfg.xml执行,但我找不到SQL查询缓存的方法 编辑: ICriteria query = CreateCriteria() .Add(Expression.Eq("Email", identifiant)) .SetCacheable(true) .SetCacheRegion("X");

Nhibernate visual studio.Net中显示的dll版本不反映引用的dll文件/产品版本

我有一个控制台应用程序c#项目,它依赖于NHibernate 3.3.2和ShapArch.NHibernate 2.0.4.628,这是用NHibernate 3.3.1编译的(据我所知,我可能错了,但当我创建了一个2.0.4 SharpArch项目时,它通过Nuget下载了NH3.3.1) 当引用的dll为3.3.2.4000时,为什么Visual Studio将NHibernate显示为版本3.3.1.4000?所有引用的特定版本属性都设置为false。SharpArch的版本出现在VS

NHibernate查询,其中包含内部选择

我在将此SQL转换为QueryOver符号时遇到问题。你能帮我吗 SELECT * FROM Alerts a WHERE a.CreatedOn = ( SELECT MAX(b.CreatedOn) FROM Alerts b WHERE b.UserFk=a.UserFk); 我尝试为每个用户选择最后一个警报。我使用CreatedOn,不能使用Id 到目前为止,我已经: session.QueryOver(() => alertAlias) .SelectL

NHibernate创建临时表,将行插入临时表并连接到临时表

在NHibernate3中,如何创建临时表,将2000行插入临时表,并将非临时表连接到NHibernate中的临时表?任何例子都会有帮助 注意:我不希望使用createsql或HQL来完成这项工作 我能想到的唯一选择是创建一个永久表,并将其用作一个临时表,每个数据集都有一个键。但是接下来我必须持续地删除临时数据

您将如何导出NServiceBus的NHibernate Saga映射?

我们将NServiceBus生成的NHibernatePersistence映射用于我们的Sagas。我想看看这些映射,以帮助诊断问题,并可能作为我们可能需要对这些映射进行一些调整的起点 使用FluentNHibernate之类的工具,我可以使用ExportTo方法来转储生成的hbm文件。是否有类似的东西可以用来转储nservicebus用于我们的sagas的默认映射?或者是否有其他方法导出生成的映射?您可以使用ScriptGenerator类,如图所示。结合ApprovalTests等功能,S

NHibernate多主键映射

我有一张叫“Orderrow”的桌子。Orderrow具有具有以下列的复合主键(CPK):OrderId、ProductId、RowNumber OrderId和ProductId也是引用Order和Product表的外键。行号在应用程序中生成 我想知道这在NHibernate中是如何映射的,因为我只能设置1个id元素和1个生成器子元素。在类映射中可以使用“复合id”属性,而不是“id”属性。但是,您应该知道,nHibernate团队强烈反对使用它。听起来像是在处理一个遗留数据库,在这个数据库中

Nhibernate 节省1000+;一次将记录保存到数据库

我目前正在使用NHibernate。我有一种情况,我需要将一组记录保存到数据库中,如下所示: var relatedTopics = GetRelatedTopics(topic); foreach (var relatedTopic in relatedTopics /* could be anywhere from 10 - 1000+ */) { var newRelatedTopic = new RelatedTopic { RelatedTopicUrl = relatedTo

Nhibernate Nhibrnate POCO对象具有关系但没有集合-多个层

这是一个概念性的问题,但我认为这是一个正确的问题 我与NHibernate合作了一段时间,但我发现很难在POCO对象中使用集合 1.我认为代理概念很好,但当您想在多层体系结构中使用它时,它将成为一个挑战。 2.我想在来自DB的任何类型的请求上添加业务逻辑。例如授权限制等。。 3.当我从集合中添加或删除实体时,我想添加一些业务逻辑 还有更多的原因可以解释为什么我在集合和代理方面有问题 我想也许有一种方法可以在不使用任何集合的情况下使用POCO对象,并让服务层处理子查询和关联等。。。 我知道Nhib

Nhibernate 向行李收集添加/删除物品

我正在与nHibernate合作,并试图了解袋子收集的意义。我的数据结构相对简单 条目: <class name="Entry"> <id name="id" column="EntryId"> <generator type="guid.comb"/> </id> <property name="Name" column="Name"/> <bag name="Results" table="Results" c

NHibernate-每个类层次结构一个表-继承类未知

在我的模型中,所有派生类都具有与基本抽象类相同的**持久**属性和方法。有一些特定于类的属性没有持久化,方法有不同的实现。 现在我有大约4个继承类,将来我会添加更多。应用程序的本质是,可以为不同的用途添加这些类,因此不可能提前知道它们。唯一需要说明的是,它们将共享相同的方法和持久属性。是将用作鉴别器的一列 我正在与战略斗争。显然,我不想为每个派生类编写类映射。事实上,我喜欢持久层完全不知道这些派生类。我想让派生类能够在基类之外创建并返回基类 我想我没有更好的选择了吗?您的方法有缺陷,因为持久层不

为什么NHibernate会抛出一个;GenericADOException:无法初始化集合";ISession期间出现异常。在这种情况下是否刷新?

我在ISession.Refresh() 我有一个具有延迟加载的子集合的实体,以及一个命中此集合的只读属性,所有这些都包含在二级缓存中。 我在长会话中使用ISession.Refresh(),在将事务提交到DB后获取最新数据,并得到以下错误: NHibernate.Exceptions.GenericADOException : could not initialize a collection: [Test.NUnit.DBTest.TestModel.ParentTestEntity.Chi

NHibernate QueryOver可以有一个SQL where语句吗?

我是新来的。我的问题是,我想通过使用实体(ie hbm)中不包含的列来缩小查询范围。我想这样做: Session.QueryOver<MyEntity>() .SQL_Where("MyFlag = 1") Session.QueryOver() .SQL_其中(“MyFlag=1”) 因为我以后不再使用该标志,所以我不想将其包含到实体中 我知道我可以使用: Session .CreateSQLQuery("SELECT A,B,C FROM ENTITY WHE

NHibernate使用代码映射实现一对一映射

我的班级结构如下: public class BaseEntity { public Guid Id { get; set; } } // CREATE TABLE Project (Id, Name) public class Project : BaseEntity { public ProjectProperties Properties { get; set; } public string Name { get; set; } } // CREATE TAB

带有连字符的NHibernate查询缓存错误

我将NH3.3.1.4000与Oracle 10g和SQL Server 2008配合使用 我最近遇到了这个可能的错误。考虑以下两个查询: var query1 = session.Query<Content>().Cacheable() .Where(c => c.Name == "test-test").ToList(); var query2 = session.CreateQuery("from Content c where

msbuild中的流畅NHibernate

我正在编写一个自动构建脚本来运行验收测试。我的应用程序使用Fluent NHibernate。我的构建脚本应该在运行测试之前部署数据库。是否存在用于从fluent mappings创建数据库的msbuild任务?我编写了一个testbaseclass,在静态构造函数中为所有测试创建一次数据库和sessionfactory。在代码方面总是比较容易

Nhibernate 如何将值对象(组件)投影到DTO中?

通过SelectList创建投影时,是否可以将组件转换为dto 我有一个值对象名,需要将其投影到Dto NameInfo中。下面是查询。 在这条线上我需要一步 .Select(c=> coveredInsured.Name).WithAlias(()=>info.Name) 类似的东西 .Select(c => new NameInfo { Last= c.Last, First=c.First, Middle = c.Middle}).WithAlias(()=>i

NHibernate删除多对多父级和子级

我有三节课公司,地址和办公室。以下是实体定义 公司: public class Company: Identity { public Company() { Offices = Offices ?? new List<Office>(); } public virtual string Name { get; set; } public virtual IList<Office> Offices { get; set

上一页   1   2   3    4   5   6  ... 下一页 最后一页 共 183 页