1

制約を課したいジェネリックメソッドがあります。

public T MyMethod<T>(object obj) where T : ???

制約はすべて単純な型int、boolなどですが、文字列も許可する必要があります。このグループを制約する方法はありますか?

4

2 に答える 2

1

正確に一致するものはIConvertibleありませんが、実行される可能性があります。値をを含むすべての「コア」タイプに変換するメソッドが含まれておりstring、言及したすべてのコアタイプによって実装されます。

BCLのドキュメントでは、このタイプを直接使用するのではなく、必要に応じConvert.ChangeTypeてまたはいずれかのConvert.ToXXX方法を使用することを推奨しています。

于 2012-11-08T15:00:46.590 に答える
0

私は構造があなたがsans文字列を探しているすべてのタイプをあなたに与えると信じています。ただし、定義されているものはすべて許可されます。これは、このためのソリューションで発生する問題です。

正直なところ、これはおそらくエンジニアリングを超えているように見えますが。要件をもう一度検討し、これが実際に必要かどうかを確認する必要があります。

于 2012-11-08T15:00:08.990 に答える