2012-05-10 7 views
0

に文字列を解析し、私はDateTimeオブジェクトにStringを解析しようとしているが、だからDateTimeオブジェクトに変換されてしまう私はそれを文字列30/05/1970を与えるのは、言わせて常に1に月にデフォルトに思えます月の値は1になります。メソッドに渡されているフォーマットがdd/mm/yyyyであることをDateTimeオブジェクト

public static DateTime ToDateTime(this String value, String format) 
    { 
     Contract.Requires(!String.IsNullOrEmpty(value)); 
     Contract.Requires(!String.IsNullOrEmpty(format)); 

     DateTime date; 
     if (DateTime.TryParseExact(value, format, CultureInfo.InvariantCulture, DateTimeStyles.None, out date)) 
     { 
      return date; 
     }   

     throw new ArgumentException("Input value is not a valid date."); 
    } 

注:

は、ここでは、コードです。

どのような考えですか?

+1

月間 'MM'は、' –

答えて

10

誤った書式指定子を月に使用しています。

MMではなく、mmです。あなたは現在、分として分を解析しています。

dd/MM/yyyyを使用してください。

+3

うんをmm'されていません。行ったことがある。 – akatakritos

+0

私はこのような2時間のために立ち往生してきました!私はあらゆる種類のことを試みましたが、フォーマットを変更することは考えていませんでした。これを指摘してくれてありがとう!非常に感謝しています:) – Kassem

+0

@カッセム:あなたはおそらく正しい答えとしてこれをマークする必要があります – MiMo