MVC3 NHibernate,SQL审计

时间:2013-09-20 12:52:44

标签: nhibernate orm auditing

我对使用ORM Fluent NHibernate SQL审核模块的实现有一些误解。情况就是这样:

我们正在讨论基于MVC3框架构建的客户端 - 服务器应用程序。 假设我们有一个呈现网格的方法:

[HttpGet]
public ActionResult ShowGrid()
{
   var gridModel = _gridService.GetAllRecords();
   return View(gridModel);
}

现在当有人执行DB Inser / Update / Delete命令时,我希望每个查看该网格的客户端都能看到内部有一些变化。

我有3个想法:

1)要编写一个通过调用数据库进行刷新的脚本,每个 X 秒。即使没有任何更改,也要进行完整选择。 最糟糕的决定

2)通过比较一些Object State / LastUpdate字段,创建某种触发器,更新自定义审计表,然后检查是否有新数据。的 更好的

3)使用其他一些工具(没有想法的工具),这将提供一些解决方案。

如果某人有某些信息,可能已经存在解决方案请分享。非常感谢你!

1 个答案:

答案 0 :(得分:2)

使用NHibernate,最简单的方法:

NHibernate Interceptor

如果您需要实现更复杂的东西,可以将它与事件监听器混合使用:

Here

或使用:

NHibernate.Envers