「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > TryParseは、C#の一般的なタイプの検証に使用できますか?

TryParseは、C#の一般的なタイプの検証に使用できますか?

2025-03-12に投稿されました
ブラウズ:771

Can `TryParse` Be Used for Generic Type Validation in C#?

汎用型検証を「tryparse」

で拡張します。しかし、この努力は、「tryparse」が未解決のままであるため、編集の障害に遭遇しました。したがって、このような実装の実現可能性に関して疑問が生じます。このクラスを組み込むことにより、より堅牢なアプローチを採用できます:

public static t convert (この文字列入力) { 試す { var converter = typedescriptor.getConverter(typeof(t)); if(converter!= null) { // convertfromstring(string text):object to(t) return(t)converter.convertfromstring(input); } デフォルトを返す(t); } catch(notsuptedexception) { デフォルトを返す(t); } }

この更新されたアプローチは、いくつかの利点を誇っています:

public static T Convert(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);
    }
}
例外の必要性を排除し、より洗練された効率的なソリューションを促進します。汎用性。
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3