「TryParse」によるジェネリック型検証の拡張
指定された文字列が事前定義された型に準拠しているかどうかを検証することを目的として、試行は次のようになります。 「TryParse」を利用した汎用拡張機能の開発が行われています。ただし、「TryParse」が未解決のままであるため、この作業はコンパイルの障害に遭遇しました。
この問題の核心は、「TryParse」が認識可能なインターフェイス内にカプセル化されていないという事実にあります。したがって、そのような実装の実現可能性について疑問が生じます。
考えられる解決策の 1 つは、この目的のために特別に設計されたメカニズムである TypeDescriptor クラスを活用することです。このクラスを組み込むことで、より堅牢なアプローチを採用できます。
public static T Convert<T>(this string input) { try { var converter = TypeDescriptor.GetConverter(typeof(T)); if (converter != null) { // Cast ConvertFromString(string text) : object to (T) return (T)converter.ConvertFromString(input); } return default(T); } catch (NotSupportedException) { return default(T); } }
この更新されたアプローチには、いくつかの利点があります。
最終的に、この改訂されたソリューションは最初の課題に効果的に対処し、事前定義された型に対する特定の入力文字列の有効性を確認する手段を提供します。
以上がC# でのジェネリック型の検証に「TryParse」を使用できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。