为什么C#Web服务将错误的日期格式值转换为有效日期

时间:2018-08-06 08:56:32

标签: c# web-services postman

我创建了一个asmx Web服务,输入的xml peice如下所示:

<OPRID>string</OPRID>
<YEAR>string</YEAR>
<RECEIPT_DATE>date</RECEIPT_DATE>

RECEIPT_DATE定义如下:

private System.DateTime rECEIPT_DATEField;
[System.Xml.Serialization.XmlElementAttribute(DataType="date", Order=8)]
public System.DateTime RECEIPT_DATE {
    get {
       return this.rECEIPT_DATEField;
   }
    set {
       this.rECEIPT_DATEField = value;
       this.RaisePropertyChanged("RECEIPT_DATE");
   }
}

现在的问题是,当我通过PostMan测试我的Web服务时,并给出了一个无效的值,例如 2018-0806 ,它会自动转换为有效日期 2018-01-01 < / strong>!

通常,当我将无效日期放入时,它将返回类似

的错误消息
  

服务器无法读取请求。 ---> XML文档(16,49)中有错误。 --->无法将字符串识别为有效的DateTime。

但是,当我输入 2018 2018-0806 之类的错误值时,它们都转换为 2018-01-01 。 这是为什么?如何使这些格式成为无效输入?

0 个答案:

没有答案