访问NHibernate拦截器中的当前请求上下文

时间:2011-10-31 14:23:02

标签: .net nhibernate interceptor unit-of-work sharp-architecture

我正在使用SharpArchitecture,我正在尝试在Infrastructure层为NHibernate创建一个简单的AuditInterceptor。

现在,我的问题是让拦截器内的当前请求详细信息可以访问。这包括当前用户以及服务器收到活动请求的日期/时间。

我应该使用某种UnitOfWork模式吗?如果是这样,什么是使UnitOfWork对象可用于拦截器代码的好方法?

1 个答案:

答案 0 :(得分:1)

据我所知,获得当前用户的最佳位置是:

System.Threading.Thread.CurrentPrincipal.Identity.Name

我还需要获取当前请求的日期/时间,并决定最好创建一个具有IPrincipal属性的自定义CurrentDateTime,然后我将自定义主体设置为Global.asax OnAuthenticated或我的MVC ActionFilter。