2017-03-28 5 views
1

찾은 예제를 변경하여 modifyby가 변경 될 때마다 세션의 사용자 이름으로 채워지도록하고 싶습니다. 이것이 가능한가?ServiceStack 사용하기 세션이있는 Ormlite 전역 필터

GlobalRequestFilters.Add((req,res,dto) => { 
    RequestContext.Instance.Items["UserName"] = req.GetSession().UserAuthName; 
}); 

당신이 당신의 UpdateFilter 내부에서 액세스 할 수있는, 예를 들면 : 당신은 당신이 중 하나 ReqeustContext 또는 ASP.NET의 HttpContext.Current.Items 사전에 채울 필요가 사용자 이름, 예를 액세스하기 위해 단일 액세스를 필요

답변

2

:

OrmLiteConfig.UpdateFilter = (dbCmd, row) => { 
    var auditRow = row as IAudit; 
    var userName = RequestContext.Instance.Items["UserName"] as string; 
    if (auditRow != null) 
     auditRow.UserName = userName; 
}; 

참고 : "UserName"은 HTTP 요청 컨텍스트 내에서만 작동합니다.