asp.net web api elmah不会将错误记录到xml文件中

asp.net web api elmah不会将错误记录到xml文件中,asp.net,asp.net-web-api,elmah,error-logging,Asp.net,Asp.net Web Api,Elmah,Error Logging,我想使用Elmah为我的web api应用程序记录错误。我希望它将错误记录到web项目中的我的App_数据文件夹中。但这在目前还不起作用。我最初只安装了elmah。并且可以通过访问我的localhost:PORT/elmah.axd查看错误日志。但没有任何内容被记录到应用程序_数据中。然后我在线搜索EDD以获取帮助,并安装了Elmah.Contrib.WebApi。但这仍然没有帮助。下面是我的配置文件 `web.config add name=“DefaultConnection”conne

我想使用Elmah为我的web api应用程序记录错误。我希望它将错误记录到web项目中的我的App_数据文件夹中。但这在目前还不起作用。我最初只安装了elmah。并且可以通过访问我的localhost:PORT/elmah.axd查看错误日志。但没有任何内容被记录到应用程序_数据中。然后我在线搜索EDD以获取帮助,并安装了Elmah.Contrib.WebApi。但这仍然没有帮助。下面是我的配置文件

`web.config


add name=“DefaultConnection”connectionString=“Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=| DataDirectory | \aspnet CashFlowManagement.Web-20161209090731.mdf;初始目录=aspnet CashFlowManagement.Web-20161209090731;集成安全性=True”
providerName=“System.Data.SqlClient”/-->

您的web.config文件不包含任何ELMAH配置。看看这篇关于如何开始的文章。缺少配置的问题可能是您的环境不允许PowerShell作为安装ELMAH NuGet包的一部分运行。如果运行
Get ExecutionPolicy
,它将返回什么

更新:按照中的说明操作并配置XML文件错误日志:

<elmah>
  <errorLog type="Elmah.XmlFileErrorLog, Elmah" logPath="~/App_Data" />
</elmah>

它返回
Restricted
这就是我所想的:)然后你需要。我正在示例中设置elmah.io错误日志,但是您应该将web.config中的elmah元素替换为:您不应该将任何文件写入虚拟目录,因为这可能会导致回收应用程序,因为有一个文件监视程序监视对虚拟目录下文件的任何更改,以执行重新启动,例如编辑web.config时的情况
Set-ExecutionPolicy RemoteSigned