我有以下内容在我的存储库方法中创建日志信息: -
var currentUser = User.Identity.Name;
var auditinfo = IntiateAudit(tms.AuditActions.SingleOrDefault(a => a.Name.ToUpper() == "DELETE").ActionID, tms.TechnologyTypes.SingleOrDefault(a => a.Name.ToUpper() == "Server").AssetTypeID, currentUser, server.ServerID);
但是我无法在我的存储库方法中获取User.Identity.Name
的值,而我可以在我的控制器操作方法中这样做?
答案 0 :(得分:3)
你不能,因为你需要引用HttpContext
。如果您在存储库中执行此操作,则可以:
string name = HttpContext.Current.User.Identity.Name;
但是,我会远离这个,因为你需要在你的存储库类中引用System.Web,它应该是一个完全不同的项目的一部分,甚至不应该开始引用System.Web。 / p>