複数の制約を持つジェネリックメソッド 質問する

複数の制約を持つジェネリックメソッド 質問する

ジェネリック パラメータが 2 つあるジェネリック メソッドがあります。以下のコードをコンパイルしようとしましたが、動作しません。これは .NET の制限でしょうか? 異なるパラメータに複数の制約を設定することは可能ですか?

public TResponse Call<TResponse, TRequest>(TRequest request)
  where TRequest : MyClass, TResponse : MyOtherClass

ベストアンサー1

これは可能ですが、構文が少し間違っているだけです。where制約ごとに、コンマで区切るのではなく、次のように入力します。

public TResponse Call<TResponse, TRequest>(TRequest request)
    where TRequest : MyClass
    where TResponse : MyOtherClass

おすすめ記事