23
ジェネリックTryParse
'TryParse'を使用して文字列が指定されたタイプかどうかを確認する汎用拡張を作成しようとしています。 public static bool Is<T>(this string input) { T notUsed; return T.TryParse(input, out notUsed); } シンボル「TryParse」を解決できないため、これはコンパイルされません 私が理解しているように、「TryParse」はどのインターフェースにも含まれていません。 これはまったく可能ですか? 更新: 以下の答えを使用して私は思いつきました: public static bool Is<T>(this string input) { try { TypeDescriptor.GetConverter(typeof(T)).ConvertFromString(input); } catch { return false; } return true; } それは非常にうまく機能しますが、そのように例外を使用することは私には正しくないと思います。 Update2: ジェネリックを使用するのではなく、タイプを渡すように変更されました。 public static bool Is(this string input, Type targetType) …