NLog ведение журнала базы данных, что дает system.argumentexception неспособность найти запрошенный провайдер данных .net framework, возможно, он не установлен - PullRequest
0 голосов
/ 27 апреля 2018

Я добавил NLog для входа в базу данных моего приложения-службы Windows. Когда я запускаю регистратор с private readonly Logger _logger = LogManager.GetCurrentClassLogger();, я получаю system.argumentexception unable to find the requested .net framework data provider it may not be installed.

Мой connectionString в App.config:

  <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>

По ссылкам у меня есть EntityFramework и EntityFramework.SqlServer.

Как я могу исправить эту проблему? Я попытался переустановить EntityFramework. Я попытался запустить свое приложение в 32-битном режиме.

Для всех остальных приложений у меня никогда не возникало проблем с добавлением NLog, подобного этому.

Спасибо.

...