What is Serilog destructuring?
<p>What is the purpose of Serilog's <code>@</code> syntax?</p>
<p>If I run the following:</p>
<pre class="lang-cs prettyprint-override"><code>var dummy = new { Foo = &quot;Bar&quot;, Date = DateTime.Now };
Log.Information(&quot;Dummy object: {Dummy}&quot;, dummy);
</code></pre>
<p>Then I get an output to the console like so:</p>
<pre class="lang-none prettyprint-override"><code>Time: 16:20 [Level: Information] (ManagedThreadID: 8) Message: Dummy object: &quot;Foo = Bar, Date = 25/06/2016 16:20:30 }&quot;
</code></pre>
<p>If I change the <code>{Dummy}</code> to <code>{@Dummy}</code> then I get the same output</p>
<pre class="lang-none prettyprint-override"><code>Time: 16:22 [Level: Information] (ManagedThreadID: 8) Message: Dummy object:  Foo: &quot;Bar&quot;, Date: 06/25/2016 16:22:28 }
</code></pre>
<p>So, what is the <code>@</code> supposed to do?</p>