制約を課したいジェネリックメソッドがあります。
public T MyMethod<T>(object obj) where T : ???
制約はすべて単純な型int、boolなどですが、文字列も許可する必要があります。このグループを制約する方法はありますか?
制約を課したいジェネリックメソッドがあります。
public T MyMethod<T>(object obj) where T : ???
制約はすべて単純な型int、boolなどですが、文字列も許可する必要があります。このグループを制約する方法はありますか?
正確に一致するものはIConvertible
ありませんが、実行される可能性があります。値をを含むすべての「コア」タイプに変換するメソッドが含まれておりstring
、言及したすべてのコアタイプによって実装されます。
BCLのドキュメントでは、このタイプを直接使用するのではなく、必要に応じConvert.ChangeType
てまたはいずれかのConvert.ToXXX
方法を使用することを推奨しています。
私は構造があなたがsans文字列を探しているすべてのタイプをあなたに与えると信じています。ただし、定義されているものはすべて許可されます。これは、このためのソリューションで発生する問題です。
正直なところ、これはおそらくエンジニアリングを超えているように見えますが。要件をもう一度検討し、これが実際に必要かどうかを確認する必要があります。