如何在Elmah中登录用户,这是在Web Api中实现的
本文关键字:Web Api 实现 用户 Elmah 登录 | 更新日期: 2023-09-27 18:12:36
我已经在webapi应用程序中使用 elmah .contrib.webapi实现了elmah。我的移动应用程序正在使用该Api,它工作得很好。我的问题是,我得到用户字段空。如何将用户名或id记录到Elmah Error_Table.
ELMAH用Thread.CurrentPrincipal.Identity.Name
的值填充User字段。大多数身份框架在用户登录时设置当前主体。
您使用的是哪种身份验证?
作为重新编译Elmah的替代方法,我们可以使用一个全局方法,该方法在调用Elmah之前填充Thread.CurrentPrincipal.Identity.Name。
public static void LogError(Exception exception, string username)
{
Thread.CurrentPrincipal = new GenericPrincipal(new GenericIdentity(username), new string[] {});
Elmah.ErrorSignal.FromCurrentContext().Raise(exception);
}