草庐IT

fluent-nhibernate-mapping

全部标签

c# - NHibernate 和 Memcached - 教程/示例

我安装了Membase服务器并设置了几个存储桶,我正在寻找一个很好的教程或示例来说明如何将其用作NHibernate的二级缓存。我感兴趣的是示例配置是什么样子的,以及我是否需要在代码中做任何事情,或者我是否可以从我的NHibernate映射中处理所有这些事情。感谢您的帮助。 最佳答案 在您的映射文件中,您需要包含以下属性:选项是读写(读取已提交隔离)、非严格读写(很少写入的对象、更好的性能但增加了过时数据的机会)或只读(永不更改的数据)。然后,在您的网络(或应用程序)配置中,您需要一个部分来配置memcached:最后,在你的ses

c# - 如何在 Fluent NHibernate 中映射 IDictionary<string, Entity>

我有一个带有IDictionary的类。如您所见,它使用多对多从其表中获取CodedExamples,使用tOwnedCodedExample表查找哪些属于OwnerClass。我意识到这是一个非常基本的(希望是标准的)映射,但我正在苦苦挣扎,找不到任何文档,因此非常感谢任何可能的帮助。非常感谢斯图 最佳答案 我有一个工作示例,这应该让您清楚。类:publicclassCustomer:Entity{publicIDictionaryFavouriteBooks{get;set;}}publicclassBook:Entity{pu

c# - NHibernate 如何查询 IList<string> 属性?

我正在尝试使用NHibernate查询我的一个域类上的IList属性。这是一个简单的例子来演示:publicclassDemo{publicDemo(){this.Tags=newList();}publicvirtualintId{get;set;}publicvirtualstringName{get;set;}publicvirtualIListTags{get;set;}}像这样映射:而且我能够很好地保存和检索。现在查询Tags属性包含指定值的域类的实例:vardemos=this.session.CreateCriteria().CreateAlias("Tags","t")

c# - NHibernate SaveOrUpdate 子集合未使用标识 ID 更新

我显然遗漏了一些东西(希望很明显),到目前为止我在Google上运气不好。我有一个父子关系映射如下简化的父mappublicsealedclassParentMap:ClassMap{publicParentMap(){Table("Parent");Component(x=>x.Thumbprint);Id(x=>x.Id).GeneratedBy.Identity();Map(x=>x.ServeralNotNullableProperties).Not.Nullable();HasMany(x=>x.Children).KeyColumn("ChildId").Inverse()

c# - 如何处理更新实体。 NHibernate + ASP.NET MVC

我无法更新之前创建的实体。我收到一个StaleObjectException异常消息:行已被另一个事务更新或删除(或未保存值映射不正确):[Project.DomainLayer.Entities.Employee#00000000-0000-0000-0000-000000000000]我不会与任何人分享更新过程。有什么问题?数据访问/DIpublicclassDataAccessModule:Ninject.Modules.NinjectModule{publicoverridevoidLoad(){this.Bind().ToMethod(c=>newConfiguration(

c# - 比较和对比来自 Telerik 的 NHibernate 和 OpenAccess

你用过OpenAccessORMfromTelerik吗??它与NHibernate相比如何?我什么时候应该考虑在NHibernate上使用它? 最佳答案 我自己也在想同样的事情。一方面,NH拥有免费的开源软件,但支持选项有限。另一方面,知名工具提供商OA的新成员。OA需要花钱,但您会得到支持。NH是免费的,但至少在我的短暂经历中,支持是有限且缓慢的。我认为两者都可能是优质产品。我已经决定尝试OA,因为我已经是Telerik工具的用户。无论如何,OA及其支持都是有偿的。NH使用普通类和对象,类属性上没有任何装饰。OA需要装饰(由OA

c# - 从现有数据库和 Fluent NHibernate 自动映射生成 C# 实体

我正在使用一个现有的数据库,该数据库使用了一些非常丑陋的约定。我想使用NHibernate,并且我认为我可以使用FluentNHibernate的自动映射约定来修复所有这些丑陋的数据库约定。我想避免手动编写所有实体类。(这就是LINQtoSQL和SubSonic的吸引力所在)是否可以根据我在FluentNHibernate中指定的数据库模式和映射生成我的C#实体?旁白:您知道NHibernate的设计器吗? 最佳答案 我想,这就是您想要的:NHibernate映射生成器。http://nmg.codeplex.com/

c# - NHIbernate OR 条件查询

我有以下映射类Trade{ID,AccountFrom,AccountTo}Account{ID,Company}Company{ID}现在我想不出一种方法来选择所有交易AccountFrom.Company.ID=XORAccountTo.Company.ID=X我可以使用以下方法开始工作:criteria.CreateCriteria("AccountFrom").CreateCriteria("Company").Add(Restrictions.Eq("ID",X);criteria.CreateCriteria("AccountTo").CreateCriteria("Com

c# - Fluent nHibernate 自动映射属性为 nvarchar(max)

使用流畅的nhibernate和自动映射(nhibernate创建我的数据库模式),我如何让nhibernate根据以下类在数据库中创建nvarchar(max)列publicclassVirtualPage:BaseEntity{publicvirtualintParentId{get;set;}publicvirtualstringPageName{get;set;}publicvirtualstringTitle{get;set;}publicvirtualstringBody{get;set;}publicvirtualstringViewName{get;set;}publi

c# - 如何写入 "fluent"日期时间值?

如何编写允许编译以下代码的C#代码:vardate=8.September(2013);//GeneratesaDateTimeforthe8thofSeptember2013 最佳答案 您可以使用扩展方法:publicstaticclassMyExtensions{publicstaticDateTimeSeptember(thisintday,intyear){returnnewDateTime(year,9,day);}}但是,这通常是不好的做法,我建议不要这样做,尤其是对于像这样微不足道的事情——newDateTime(20