Я добавил 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="data source=x.database.windows.net;initial catalog=db;persist security info=True;user id=x;password=x;multipleactiveresultsets=True;application name=EntityFramework"" 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, подобного этому.
Спасибо.