title: Can I ignore delegate parameters with lambda syntax?
body: <p>I am curious why C# allows me to ignore delegate parameters in some cases but not others.</p>
  
  <p>For instance this is permitted:</p>
  
  <pre><code>Action&lt;int&gt; action = delegate { Console.WriteLine("delegate"); };
  </code></pre>
  
  <p>but this is not:</p>
  
  <pre><code>Action&lt;int&gt; action = () =&gt; Console.WriteLine("lambda");
  </code></pre>
  
  <p>Is there a way to initialize a delegate and ignore the parameters using a lambda?  I know that I can add a single parameter to the lambda and fix the previous line but this is more of an academic question pertaining to the compiler and why or how this works.</p>