1
値が所定の型に変換できるかどうかを確認するコードです。カスタム日付形式のC#型コンバータ
public static object TryParseObject<T>(object valueObject)
{
string value = null;
try
{
value = Convert.ToString(valueObject);
var converter = TypeDescriptor.GetConverter(typeof(T));
if (converter != null)
{
//Cast ConvertFromString(string text) : object to (T)
return (T)converter.ConvertFromString(value);
}
return default(T);
}
catch
{
//Can't parse
}
}
これは動作するはずです。これで、日付文字列をDateTime
に変換する必要があります(例:「MM.DD.YYYY HH:mm:ss」)。それをどうすれば実現できますか?
DateTimeシナリオは別途処理する必要がありますか? like:
if(typeof(T) == typeof(DateTime)) {...}
else {...}
私はいくつかの変更を加えて既存のコードを使用できるかどうかを見ています。ありがとう。
私は別のメソッドが良くなると思いますが、この種のメソッドはすでに 'DateTime.TryParseExact'です。 – Fabio
TryParseExactの参照先https://msdn.microsoft.com/en-us/library/ms131044(v=vs.110).aspx – kurakura88