问题标签 [unitofworkapplication]

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 回答
482 浏览

asp.net - 是否可以在 ASP.NET 3.5(不是 MVC)中使用 Rhino.Commons.HttpModules.UnitOfWorkApplication?

我试图找到有关在 ASP.NET(不是 MVC)中使用 UnitOfWorkApplication 的教程/文章。但我能找到的所有信息都是关于如何在 ASP.NET MVC 中使用它。

这是否意味着在我们旧的 webform 应用程序中无法使用 Rhino.Commons.HttpModules.UnitOfWorkApplication ?

我遇到了我在 ASP.NET 页面中使用从 Rhino.Commons.NHRepository 继承的存储库的问题。它需要在调用存储库中的函数之前调用 UnitOfWork.Start()。我在弄清楚如何将它连接到 ASP.NET 中迷失了方向。

0 投票
1 回答
904 浏览

asp.net-mvc - Rhino UnitOfWorkApplication + Castle 自动事务管理应用程序不会在请求结束时自动刷新

我正在构建基于 UnitOfWorkApplication 的 ASP.Net MVC 应用程序,并且我想使用 Castle ATM 设施。目前我在请求结束时刷新会话有问题。我的服务类(在我的控制器操作方法中调用)如下所示:

当我取消注释“UnitOfWork.CurrentSession.Flush();” 行一切正常 - 新用户保留在数据库中。但是,如果我不明确刷新会话,则不会保留任何内容。

UnitOfWorkApplication + ATM 应该在请求结束时刷新更改 AFAIK - 对吗?有没有人建议我应该在没有明确 session.Flush() 调用的情况下尝试使其工作?

0 投票
0 回答
366 浏览

unit-of-work - 工作单元模式和持久性

我一直在阅读有关工作单元模式的信息,但我对 UoW 实际保存数据的方式感到困惑。

当我们提交更改时,UoW 应该遍历已添加、已更新和已删除对象的列表,并以某种方式找到负责添加、更新、删除特定类型对象的类。

我找不到展示这种技术的例子。

对此的任何建议将不胜感激。

莫什

0 投票
1 回答
500 浏览

c# - 从 Asp.net 和流利的 nhibernate 中的子更新父表

我正在尝试从 Asp.net 中的子视图更新子表中引用的父表中的数据。

我使用 Fluent Nhibernate 映射表。

在子表中,映射如下所示:

父表的映射:

在我的控制器中,它看起来像这样......

使用上面的代码,当我尝试更新子表中的值时,它可以工作。但是,如果我尝试将更改保存在父表中,它就不起作用。

你有任何想法如何解决这个问题吗?

谢谢。

0 投票
2 回答
1043 浏览

entity-framework - 如何为实体框架 4 创建静态 UnitOfWork?

考虑到这个类

是否为每个 (XEntities context = new XEntities()) {...} 创建了与数据库的连接?如果是这样,创建静态 UnitOfWork 类以便只存在 1 个连接的正确方法是什么?

0 投票
5 回答
6124 浏览

hibernate - 工作单元模式的来源是什么?

此页面上,我阅读了以下内容:

工作单元是 Martin Fowler 描述的设计模式

Martin Fowler 是否在 Hibernate 开发人员之前发现了这种模式?他是描述这种模式的唯一来源吗?

0 投票
3 回答
1756 浏览

c# - NHibernate 工作单元 - 多个会话 (WinForms)

我正在为 NHibernate 的学习曲线而苦苦挣扎。

我们目前正在移植我们的 C# Winforms 应用程序以使用 NHibernate,并且正在使用 Gabriel Schenker 详述的工作单元 (UnitOfWork)。

NHibernate 和工作单元模式

我们希望在“对话式”的基础上使用 UnitofWork。例如,当用户打开一个表单时,我们会打开一个 UnitOfWork 会话,然后保持打开状态直到表单关闭。表单只是定义业务对话的一种更简单的方式,我们可能会根据具体实现稍作更改,但对于本示例,请使用表单打开和关闭作为示例。

当我们有一个表单在另一个表单上打开的场景时,问题就存在了。在这种情况下,我们应该有两个 UnitOfWork 操作。一个对基础表单仍然有效,一个新的 UnitOfWork 用于新表单。

我们如何实现这一点?Gabriel 提供的 UnitOfWork 功能只允许每个 UnitOfWork 一个会话?我最初的想法是将会话存储在字典中,以便可以从应用程序的任何形式或部分调用会话。

你的意见?

0 投票
2 回答
896 浏览

c# - NHibernate 会话管理建议

我需要一些关于 C# WinForms 应用程序的 NHibernate 会话管理的建议。

我目前正在移植一个应用程序以使用 NHibernate。我还采用了 UnitOfWork 模式,如下面的链接所述;

http://nhforge.org/wikis/patternsandpractices/nhibernate-and-the-unit-of-work-pattern.aspx

我的问题与会话有关。

  1. 您能否始终让每个线程运行一个会话?

  2. 我有一个场景,其中一个会话(UnitOfWork)可能为应用程序显示的表单打开,但用户打开另一个表单(即工具 - 选项),我想拥有它自己的 UnitOfWork。显然,在这种情况下,为“工具 - 选项”表单打开另一个会话而不使用当前打开的会话用于基础表单会更有意义。

  3. 我们可以在一个线程上有一个会话字典吗?

任何有关会话管理的建议都值得赞赏。

0 投票
3 回答
790 浏览

asp.net - ASP.NET MVC - 使用 UnitOfWork

我目前正在开发一个由 6 层组成的网络应用程序:

  • Web(参考 ViewModels 和 Controllers)
  • 视图模型
  • 控制器
  • 服务(参考数据和实体)
  • 数据(参考实体)
  • 实体

我想要实现的是“UnitOfWork”模式,因此我有一个由 DI 为该工作注入的类,当我完成时,可以在控制器的 actionresult 中执行 .commit()数据库。

现在是我的问题......这个 UnitOfWork 类应该放在哪里?目前在我的数据层中,但这需要控制器层引用数据层和服务层,这在我看来很奇怪......我应该将 UnitOfWork 类/接口移动到服务层并使用 DI 吗?

0 投票
2 回答
452 浏览

c# - C#.NET: does TransactionScope object synchronizes the access to code among multiple threads of users ?

Does the TransactionScope object also synchronizes the access to code among Multiple threads of Users ? OR, it only declares the code (Business Operations) as atomic (single Transaction)?

Details: 1. I am implementing UnitOfWork class for Repositories in Infrastructure Layer which itself is defined as class library project (dll).

  1. Repository contains reference to object of UnitOfWork to call its methods which maintain diciontary/collection of Entities that has been added, changed Or updated.

  2. Unit of Work class has a member function Commits() which has the code wrapped inside TransactionScope object.

Consider that Multiple users access the Domain/Business objects then i presume that each user will have its own set of business objects running in its thread.

I am not sure what TransactionScope object will do in this case ? Is it just decalring the multiple operations inside a user thread as single business transaction ? OR it is synchronizing the acess to code also among different threads of user/s? The code of UnitOfWork class is as below: