title: Method parameter type to pass a lambda expression prior to execute
body: <p>I am trying to retrofit some interface based abstraction to legacy code as a preliminary step for Dependency Injection. The legacy code contains lambda usage that I am struggling to encapsulate. Here is the existing lambda usage:</p>
  
  <pre><code>private void MethodAaa(EntityA a, EntityB a, int someInt) {...}
  
  private void MethodBbb(DateTime date, EntityA e) {...}
  
  
  _commandObjectFromThirdPartyLibrary.Execute(() =&gt; MethodAaa(a, b, c));
  
  _commandObjectFromThirdPartyLibrary.Execute(() =&gt; MethodBbb(d, e));
  </code></pre>
  
  <p>I wish to route the lamda execution via a common base class method as follows:</p>
  
  <pre><code>base.CommonExecute( () =&gt; MethodAaa(a, b, c) );
  base.CommonExecute( () =&gt; MethodBbb(d, e) );
  
  base.CommonExecute( Action&lt;???&gt; lamdaExpression )
  {
      _commandObjectFromThirdPartyLibrary.Execute( lamdaExpression );
  }
  </code></pre>
  
  <p>Can someone provide an example of how to declare base.CommonExecute(?) properly?</p>