私はDocumentDBでAzureのコレクションを持つデータベースをセットアップしました。私は接続することができます、クエリ、データベース全体のCRUD事を更新します。今私は新しいデータベースにエラーを記録できるようにseriLogを追加しています。 SeriLogにはAzure DocumentDbのシンクがあります。あなたはNuGet経由でインストールすることができます。Azureに文書を書き込むSeriLogで012bを返します
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