ストアド プロシージャのパラメーターの型と戻り値の型を定義するために使用する次のインターフェイスを想定しています...
public interface IStoredProcedure<out TReturn, out TParameter>
where TReturn : class
where TParameter : class
{
TReturn ReturnType { get; }
TParameter ParameterType { get; }
}
...このインターフェースをメソッドとして渡すことは可能TypeParameter
ですか? これに沿ったもの(コンパイルされません)
public static void DoAction<TProcedure>(TProcedure procedure1)
where TProcedure : IStoredProcedure<TReturnType, TParameterType>
{
// do some work
}
...またはこれらの線に沿った何か...
public static void DoAction<IStoredProcedure<TReturnType, TParameterType>>(IStoredProcedure procedure1)
where TReturnType : class
where TParameterType : class
{
// do some work
}
これらの 2 つの方法はどちらもコンパイルされず、それらをコンパイルするための書き方がわかりません。メソッドではDoAction()
、パラメーターの型と戻り値の型を調べる必要があります。