Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net ${mdlc:item=RequestId}和${aspnet request posted body}未返回数据_Asp.net_C# 4.0_Nlog - Fatal编程技术网

Asp.net ${mdlc:item=RequestId}和${aspnet request posted body}未返回数据

Asp.net ${mdlc:item=RequestId}和${aspnet request posted body}未返回数据,asp.net,c#-4.0,nlog,Asp.net,C# 4.0,Nlog,我在nlog.config文件中使用了${aspnet request posted body},我还在启动文件中添加了配置。但是${aspnet request posted body}没有记录请求body,并且${mdlc:item=RequestId}也没有工作 nlog文件中使用的${aspnet request posted body}和${mdlc:item=RequestId} 为了在启动时启用${aspnet request posted body},我使用了以下代码 app

我在nlog.config文件中使用了
${aspnet request posted body}
,我还在启动文件中添加了配置。但是
${aspnet request posted body}
没有记录请求body,并且
${mdlc:item=RequestId}
也没有工作


  • nlog文件中使用的
    ${aspnet request posted body}
    ${mdlc:item=RequestId}
  • 为了在启动时启用
    ${aspnet request posted body}
    ,我使用了以下代码
  • app.Use(异步(上下文,下一步)=>
    {
    context.Request.enableBuffer();
    等待下一步?.Invoke();
    }); 
    
    可能会从以下简单内容开始:

    <target xsi:type="File" name="allfile" fileName="c:\Logs\Api_.log"
                layout="RequestId=${mdlc:item=RequestId} RequestBody=${aspnet-request-posted-body}" />
    
    
    
    然后在调试级别启用NLog InternalLogger并查找线索:

    除了调用
    enablebuffer()
    之外,还需要使用
    UseNLog()
    方法将NLog正确注册为LoggingProvider。另见

    如果您没有使用Microsoft
    ILogger
    在活动HttpRequest的上下文中进行日志记录,则
    RequestId
    将不可用。

    另请参阅: