У меня очень специфическая проблема.
У меня есть этот код:
DT_PMNotificationRequestRecords request = new DT_PMNotificationRequestRecords();
request.NOTIF_DATE = DateTime.ParseExact(txtNotifData.Text, "yyyy-MM-dd", CultureInfo.InvariantCulture);
request.REQ_START = DateTime.ParseExact(txtReqStart.Text, "yyyy-MM-dd", CultureInfo.InvariantCulture);
Теперь и Notif_DATE
, и REQ_START
имеют правильные значения даты.
Но когда объект запроса передается веб-службе, которую я написал, используя тот же класс, что и объект в массиве.
requestRecords = new DT_PMNotificationRequestRecords[]{request, request2};
Notif = new Notifications.SI_PMNotification_Out_SyncResponseSoapClient(bindingHttp, endPointHttp);
Notif.SI_PMNotification_Out_Sync(requestRecords);
Веб-служба:
public DT_PMNotificationResponseRecords[] SI_PMNotification_Out_Sync(DT_PMNotificationRequestRecords[] request)
{
try
{
Здесь в запросеобъект, дата REQ_Start
возвращается как "0001-01-01", но notif_date
является правильным, например, 10-10-2019
.
В классе поля определены так:
[System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, DataType="date", Order=6)]
public System.DateTime NOTIF_DATE
{
get { return this.nOTIF_DATEField; }
set {
this.nOTIF_DATEField = value;
this.RaisePropertyChanged("NOTIF_DATE");
}
}
[System.Xml.Serialization.XmlElementAttribute(Form=System.Xml.Schema.XmlSchemaForm.Unqualified, DataType="date", Order=10)]
public System.DateTime REQ_START
{
get { return this.rEQ_STARTField; }
set {
this.rEQ_STARTField = value;
this.RaisePropertyChanged("REQ_START");
}
}