2 型のインターフェイスを作成し、それをメソッドの戻り値として使用する必要があります。
public interface StringLong<T1,T2>
where T1 : string
where T2 : long
{}
StringLong<T1,T2> method StringLong<T1,T2>()
2 型のインターフェイスを作成し、それをメソッドの戻り値として使用する必要があります。
public interface StringLong<T1,T2>
where T1 : string
where T2 : long
{}
StringLong<T1,T2> method StringLong<T1,T2>()
string
と だけに制約する 2 つのジェネリック型を使用してインターフェイスを定義しても意味がありませんlong
。
タプルが欲しいだけのようです:
(string, long) MyMethod()
{
return ("Hello", 42L);
}
戻り値に名前を付けることもできます:
(string message, long meaningOfLife) MyMethod()
{
return ("Hello", 42L);
}
次に、次のように記述できます。
var result = MyMethod();
Console.WriteLine(result.message);
Console.WriteLine(result.meaningOfLife);