依存性注入の準備段階として、いくつかのインターフェイス ベースの抽象化をレガシー コードに後付けしようとしています。レガシー コードには、カプセル化するのに苦労しているラムダの使用法が含まれています。既存のラムダの使用法は次のとおりです。
private void MethodAaa(EntityA a, EntityB a, int someInt) {...}
private void MethodBbb(DateTime date, EntityA e) {...}
_commandObjectFromThirdPartyLibrary.Execute(() => MethodAaa(a, b, c));
_commandObjectFromThirdPartyLibrary.Execute(() => MethodBbb(d, e));
次のように、共通の基本クラスメソッドを介してラムダ実行をルーティングしたいと思います。
base.CommonExecute( () => MethodAaa(a, b, c) );
base.CommonExecute( () => MethodBbb(d, e) );
base.CommonExecute( Action<???> lamdaExpression )
{
_commandObjectFromThirdPartyLibrary.Execute( lamdaExpression );
}
誰かが base.CommonExecute(?) を正しく宣言する方法の例を提供できますか?