2 回答

TA貢獻(xiàn)1843條經(jīng)驗(yàn) 獲得超7個(gè)贊
最后,我通過(guò)添加操作過(guò)濾器并向 Serilog 的 LogContext 添加屬性來(lái)修復(fù)此問(wèn)題,如下所示:
public class LoggingPropertiesFilter : IActionFilter
{
public void OnActionExecuting(ActionExecutingContext context)
{
// Do something before the action executes.
ControllerBase controllerBase = context.Controller as ControllerBase;
if(controllerBase != null)
{
var routeAction = controllerBase.RouteData.Values["action"];
LogContext.PushProperty("method", routeAction);
}
}
public void OnActionExecuted(ActionExecutedContext context)
{
// Do something after the action executes.
}
}
到目前為止,我遇到的唯一問(wèn)題是我必須手動(dòng)為每個(gè)操作附加一個(gè)屬性才能使其工作,但這確實(shí)解決了我遇到的最初問(wèn)題(如果它對(duì)任何人都有用的話)。

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超8個(gè)贊
嘗試在操作中使用以下代碼:
var methodname = ControllerContext.ActionDescriptor.ActionName;
- 2 回答
- 0 關(guān)注
- 159 瀏覽
添加回答
舉報(bào)