NLog数据库日志记录给system.argumentexception无法找到它可能未安装的请求的.net框架数据提供程序

时间:2018-04-27 06:24:04

标签: c# .net entity-framework nlog

我已添加NLog以登录到我的Windows服务应用程序的数据库。当我使用private readonly Logger _logger = LogManager.GetCurrentClassLogger();初始化记录器时,我得到system.argumentexception unable to find the requested .net framework data provider it may not be installed

我在App.config中的connectionString

  <connectionStrings>
    <add name="DbEntities" connectionString="metadata=res://*/;provider=System.Data.SqlClient;provider connection string=&quot;data source=x.database.windows.net;initial catalog=db;persist security info=True;user id=x;password=x;multipleactiveresultsets=True;application name=EntityFramework&quot;" providerName="System.Data.EntityClient" />
  </connectionStrings>

在NLog.config中:

<targets>

    <target name="database" xsi:type="Database">

      <connectionStringName>DbEntities</connectionStringName>
      <commandText>
        insert into dbo.Log (Application, Logged, Level, Message, Logger, CallSite, Exception) values (@Application, @Logged, @Level, @Message,@Logger, @Callsite, @Exception);
      </commandText>

      <parameter name="@application" layout="app" />
      <parameter name="@logged" layout="${date}" />
      <parameter name="@level" layout="${level}" />
      <parameter name="@message" layout="${message}" />

      <parameter name="@logger" layout="${logger}" />
      <parameter name="@callSite" layout="${callsite}" />
      <parameter name="@exception" layout="${exception:tostring}" />
    </target>

  </targets>

根据参考资料,我有EntityFrameworkEntityFramework.SqlServer

如何解决此问题?我尝试重新安装EntityFramework。我尝试在32位模式下运行我的应用程序。

对于我的所有其他应用程序,我从来没有像这样添加NLog的问题。

谢谢。

0 个答案:

没有答案