问题标签 [ncommon]

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 投票
1 回答
268 浏览

asp.net-mvc - 有没有使用 NCommon 的好的示例 MVC 应用程序?

我的搜索没有显示任何内容。有谁知道使用 NCommon 框架的优秀示例 MVC 应用程序?我们正在寻找一个支持 EF 4 或 NHibernate 3 的良好框架。NCommon 似乎在这方面符合要求,但该项目非常缺乏任何好的代码示例。

0 投票
1 回答
573 浏览

nhibernate - CastleWindsor + NHibernate + NCommon IRepository:如何自动注册?

我正在尝试使用 Castle 将 NHibernate 实体自动注册为 NCommon IRepository,但我无法弄清楚。

在之前的项目中,我们使用了 autofac,这就是我们完成它的方式:

有城堡的等价物吗?谢谢!

编辑:

这是我能得到的最接近的结果,但是 ComponentActivator 在实例化 NHRepository 时失败:

ComponentActivator 无法实例化 NCommon.Data.NHibernate.NHRepository

手动实例化会爆炸:

和:

*对象引用未设置为 Microsoft.Practices.ServiceLocation.ServiceLocator.get_Current() 中 c:\Home\Chris\Projects\CommonServiceLocator\main\Microsoft.Practices.ServiceLocation\ServiceLocator.cs:line 17 中的对象实例*

解决了:

我错过了这个:

WindsorServiceLocator 可在此处获得:

http://commonservicelocator.codeplex.com/wikipage?title=Castle%20Windsor%20Adapter&referringTitle=Home

更多信息在这里:

http://prashantbrall.wordpress.com/2010/11/22/service-locator-pattern-with-windsor-castle/

0 投票
1 回答
444 浏览

nhibernate - NCommon + Fluent NHibernate + 多个数据库?

我正在尝试通过http://codeinsanity.com上的指南将 NCommon 和 NH 连接到多个数据库(请参阅“为多个数据库支持配置 NCommon”),它通过以下建议的流畅方法工作:

这可以按预期工作,但您可以看到 sessionFactories 是硬编码的。我真正想做的是这样的:

但这会引发以下异常:

无法注册组件 NCommon.Data.NHibernate.NHUnitOfWorkFactory。已经有一个具有该名称的组件。您是否想修改现有组件?如果不是,请确保指定一个唯一名称。

我希望有一种正确的方法来连接 n-SessionFactories 而无需对其进行硬编码 - 但我只是没有看到解决方案。有什么建议吗?

0 投票
1 回答
2581 浏览

nhibernate - nHibernate Eager Loading 在运行时

我们正在使用 NCommon 的 UnitOfWorkScope,它包装了 nHibernate ISession 功能。我们的目标是按需预先加载复杂的属性,而不是总是通过配置预先加载它们。这个想法是,检索实体的给定服务可以通过调用代码进行一些自定义 - 有时我们只希望父实体被水合,其他时候我们可能也希望复杂的子属性也被水合。

为此,我们正在执行以下操作:

在会话上设置好之后,我们使用 NCommon 的 IRepository 功能来检索实体:

但是,当我们检查 parent.Children 集合时,我们会得到:

...这告诉我没有发生急切加载。当我们修改 NH 映射以始终强制进行急切加载时,我们可以正确地看到子代。

任何人都可以阐明这一点吗?我假设我们错过了一些东西,因为 FetchMode.Eager 被忽略了。

0 投票
1 回答
169 浏览

nhibernate - 级联重新保存的已删除对象 - 自引用表

我收到以下错误:“已删除的对象将被级联重新保存(从关联中删除已删除的对象)”

我已将整个 ajax 调用修剪为以下内容:

我的映射如下

0 投票
1 回答
1254 浏览

c# - 在同一事务中删除和添加子实体混淆 nhibernate

我收到了经典错误:

但是加上一个额外的转折,该错误完全源于我正在删除一个实体并添加一个新实体。

我用这种方法清空所有预先存在的孩子

然后立即添加新的

对于那些想知道存储库中发生了什么的人来说,我的最佳答案是魔法。10,000% 魔法。最初的开发者使用 NCommon。这两个方法都是从包装在 NCommon.UnitOfWork 属性中的方法调用的。

应该注意的是,每种方法都按预期执行。(IE,没有字段可以删除添加的作品,同样,也没有字段可以添加删除的作品。)

编辑

回答

我没有将它们添加为父节点的新权利,只是相关的补充。