ホームページ >バックエンド開発 >C++ >C# で文字列変換用の信頼できる汎用「TryParse」ユーティリティを作成するにはどうすればよいですか?

C# で文字列変換用の信頼できる汎用「TryParse」ユーティリティを作成するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-30 18:40:16144ブラウズ

How Can I Create a Reliable Generic

汎用 'TryParse' ユーティリティ

文字列変換を検証するための便利なユーティリティを作成しようとした開発者は、'TryParse' の使用時にコンパイル エラーが発生しました。このエラーは、「TryParse」がインターフェイスまたは基本クラスで定義されていないために発生しました。

これを克服するために、開発者は代替メソッドを検討しました。 1 つのアプローチでは、TypeDescriptor とその 'TryParse' 機能を利用することが提案されています。ただし、この実装は例外処理に依存しており、その信頼性について懸念が生じました。

これらの問題に対処するために、汎用の 'TryParse' ユーティリティの修正バージョンが導入されました。

public static bool Is(this string input, Type targetType)
{
    try
    {
        TypeDescriptor.GetConverter(targetType).ConvertFromString(input);
        return true;
    }
    catch
    {
        return false;
    }
}

これ変更されたコードはジェネリックへの依存を排除​​し、代わりに検証される型を明示的に渡します。 「ConvertFromString」メソッドを使用して、入力文字列を指定された型に変換しようとします。変換中に発生した例外は検証失敗として解釈され、ブール値の「false」が返されます。

TypeDescriptor の変換機能を活用することで、この改訂された「TryParse」ユーティリティは、文字列変換を検証するための信頼性の高い柔軟なメカニズムを提供します。例外ベースの実装の落とし穴。

以上がC# で文字列変換用の信頼できる汎用「TryParse」ユーティリティを作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。