У меня есть база данных с коллекцией в Azure с DocumentDB. Я могу подключиться, запросить, обновить всю вещь CRUD с помощью базы данных. Теперь я добавляю seriLog, чтобы я мог регистрировать ошибки в моей новой базе данных. У SeriLog есть раковина для Azure DocumentDb. Вы можете установить его с помощью NuGet:Напишите Azure documentDb с SeriLog
Install-Package Serilog.Sinks.AzureDocumentDb
После этого, я следующий в качестве теста, чтобы написать что-то в моей базе данных с помощью seriLog:
Uri uri = new Uri(ConfigurationManager.AppSettings["endpoint"]);
DateTimeOffset timestamp = new DateTimeOffset(DateTime.Now);
Exception exception = new Exception("This is just a test");
IEnumerable<MessageTemplateToken> tokens = new List<MessageTemplateToken>();
MessageTemplate messageTemplate = new MessageTemplate(tokens);
IEnumerable<LogEventProperty> properties = new List<LogEventProperty>();
LogEvent logEvent = new LogEvent(timestamp, LogEventLevel.Information,exception,messageTemplate,properties);
var azure = new AzureDocumentDBSink(uri, ConfigurationManager.AppSettings["authKey"], ConfigurationManager.AppSettings["database"], "Items",null);
azure.Emit(logEvent);
Когда я пытаюсь скомпилировать этот проект, я получим следующее:
Error CS1705 Assembly 'Serilog.Sinks.AzureDocumentDB' with identity
'Serilog.Sinks.AzureDocumentDB, Version=1.5.0.0,
Culture=neutral, PublicKeyToken=24c2f752a8e58a10' uses 'Serilog,
Version=1.5.0.0, Culture=neutral, PublicKeyToken=24c2f752a8e58a10'
which has a higher version than referenced assembly
'Serilog' with identity 'Serilog, Version=1.4.0.0, Culture=neutral,
PublicKeyToken=24c2f752a8e58a10'
Я посмотрел в app.config и увидел следующее:
<dependentAssembly>
<assemblyIdentity name="Serilog" publicKeyToken="24c2f752a8e58a10" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.4.0.0" newVersion="1.4.0.0" />
</dependentAssembly>
Обычно, когда это происходит, я просто обновляю ссылку, и мне хорошо идти. Но это не так. Я начал с чистого консольного приложения в VS2015, установил пакет NuGet, добавил код и попытался запустить его. Кто-нибудь знает, почему это происходит и как это исправить? Спасибо
Спасибо, Николас. Я написал твиттер вас об этом, и вы тоже ответили там. Работает! – BoundForGlory