我对使用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)使用其他一些工具(没有想法的工具),这将提供一些解决方案。
如果某人有某些信息,可能已经存在解决方案请分享。非常感谢你!
答案 0 :(得分:2)
使用NHibernate,最简单的方法:
如果您需要实现更复杂的东西,可以将它与事件监听器混合使用:
或使用: