我目前的观点是存储库应该包含特定于实体的修改方法,如添加,删除等.而UnitOfWork应该只包含与它相关的方法,如Commit(也称为SaveChanges,SubmitChanges)和Rollback(也称为作为ClearChanges).但Martin Fowler在他关于UnitOfWork的文章中建议将所有修改方法添加到UnitOfWork中.
那么现在哪种方式更好,在EF和NHibernate的世界?
更新. 我应该注意,即使采用我更好的方法,最后通过存储库的所有修改都会进入内置于EF Context或NHibernate Session的UnitOfWork.而我的UnitOfWork更像是UnitOfWorkManager(它管理内部ORM UnitOfWork).
我想使用Bootstrap的按钮下拉列表来显示表单组件,而不是其他带有附加信息的按钮列表.可能吗?
我们正在考虑将ASP.NET MVC应用程序迁移到Node.js. 这是我目前对迁移过程的理解.
我们的典型行为如下:
public ActionResult Something(...)
{
//1. execute query (for GET) or command (for POST)
//2. SignalR notification in case POST request
//3. Return query result (for GET) or void (for POST)
}
Run Code Online (Sandbox Code Playgroud)
完全我想将所有与Web相关的代码移动到Node.js(以便我们摆脱死亡/支持不良的依赖关系,如SignalR),但保留C#上的逻辑(查询,命令)(无需重写现有代码) ,比JS更容易维护.所以我遇到的最佳解决方案(理论上还没有尝试过)是通过Edge.js从Node.js调用我们的C#命令/查询.我想这方面存在陷阱,所以我想知道你对它的看法.
.net ×1
asp.net-mvc ×1
edge.js ×1
javascript ×1
nhibernate ×1
node.js ×1
repository ×1
signalr ×1
unit-of-work ×1