鑑於此代碼:Serilog:之間{..} {差異@ ..}
var d1 = new { x = 5, y = 88 };
Log.Logger.Information("{d1}", d1);
Log.Logger.Information("{@d1}", d1);
如何將在D1的對象在兩個不同Log.Logger.Information登錄(...)行呢? 換句話說,在{}之間添加@會產生什麼影響?
我讀「https://github.com/serilog/serilog/wiki/Structured-Data」標題下的「保留對象結構」,但這對我沒有意義。
實際上有'{..}'(默認),'{$ ..}'(stringify)和'{@ ..}'(結構)。是[this](https://github.com/serilog/serilog/blob/60e8120a12abee4db942d2ff03b123341fab1fff/src/Serilog/Parsing/Destructuring.cs)*也許*有更多幫助? –
這並沒有爲我清除它。 「default」和「destructure」似乎都將對象存儲爲結構化對象,而不是字符串。我很欣賞有一個區別,但看不到它。 – user1147862
方便的是,有人剛剛寫了一個很好的Pluralsight課程來解釋這個:http://pluralsight.com/training/Courses/TableOfContents/modern-structured-logging-serilog-seq –