トピックが言うように、私は次のような文字列を持っています
string CreatedDate = "12/09/2010"
DateTimeとしてのみ受け入れるWebメソッドに渡したい
customer.dateCreated = Convert.ToDateTime(CreatedDate);
当然、Web サービスが受け入れない日付の後に hh:mm:ss を追加するので、日付に変換するときに日付を短い形式に保つにはどうすればよいですか?
前もって感謝します
トピックが言うように、私は次のような文字列を持っています
string CreatedDate = "12/09/2010"
DateTimeとしてのみ受け入れるWebメソッドに渡したい
customer.dateCreated = Convert.ToDateTime(CreatedDate);
当然、Web サービスが受け入れない日付の後に hh:mm:ss を追加するので、日付に変換するときに日付を短い形式に保つにはどうすればよいですか?
前もって感謝します
値は、その書式設定を何も知りません(DateTime
実際、そうすべきではありません)。標準の日付/時刻形式を受け入れない場合、Web サービスが壊れているようです。Web サービスの実装は何ですか? 「顧客」は自動生成されたプロキシ クラスですか?
あなたが持っていると仮定します:
void WebMethod(DateTime date);
と
string dateString = "12/09/2010";
次に次のようにします。
DateTime date;
if (DateTime.TryParseExact(dateString, "dd/MM/yyyy", CultureInfo.InvariantCulture, DateTimeStyles.None, out date))
{
WebMethod(date);
}
else
{
// raise an error - specified date is not in specified format
}
ノート:
date.Hour // 0
date.Minute // 0
date.Seconds // 0
それ以外の場合、DateTime
オブジェクトがありWebMethod(string date)
、日付を指定された形式にする必要がある場合は、次のようになります。
DateTime date = ..;
WebMethod(date.ToString("dd/MM/yyyy"));
WebService は日付を "12/09/2010" としてのみ受け入れますか? 通常、Web サービスは、 XML Schema Part 2: Datatypes Second Editionの推奨事項に従う必要があります 。
これはUTC形式です。使用:
DateTime.ParseExact(value, "ddd MMM dd HH:mm:ss zz00 yyyy", null);
ほとんどの場合、問題を解決します。
DateTime
時間情報を削除する.Date
プロパティがあります。