在我的客户端,我得到一个带有datetime属性的对象,所以当我将对象发送到服务器端时,我以json格式发送它,所以当我尝试使用该属性时,会以不同的格式显示。
原始日期时间属性为“2016-03-09T17:16:33”,当我尝试使用该属性时,显示如下:“09/03/2016 05:16:33 p.m.”
我想要的是避免播放,或将属性重新格式化为原始格式。
我使用Newtonsoft.Json来处理服务器端的json。
这是客户端的对象(angularjs)
var factura = {
comprobante:{
fecha:"2016-03-09T17:16:33",
version:"3.2",
tipoDeComprobante:"comprobante",
formaDePago:"Efectivo",
subTotal:"123123.123",
total:"4234234",
metodoDePago:"deposito",
LugarExpedicion:"guadalajara"
},
cliente:{
token:"69113116100"
},
receptor:{
rfc:"234dfdg3gfdgsg42",
domicilio:{
pais:"Mexico"
}
},
emisor:{
rfc:"234dfdg3gfdgsg42",
domicilioFiscal:{
calle:"san cristobalito",
municipio:"zapopan",
estado:"jalisco",
codigoPostal:"3434",
pais:"mexico"
},
regimenFiscal:{
Regimen:"regimen"
}
},
conceptos:
[
{
cantidad:"234",
unidad:"1.0",
descripcion:"descripcion",
valorUnitario:"decimal",
importe:"importe"
},
{
cantidad:"234",
unidad:"1.0",
descripcion:"descripcion",
valorUnitario:"decimal",
importe:"importe"
}
],
impuestos:{
traslado:[
{
impuesto:"1.3",
tasa:"2.5",
importe:"importe"
},
{
impuesto:"1.3",
tasa:"2.5",
importe:"importe"
}
],
retencion:[
{
impuesto:"1.3",
tasa:"2.5",
importe:"importe"
},
{
impuesto:"1.3",
tasa:"2.5",
importe:"importe"
}
]
},
tieneComplementoDonat:"0"
};
这是我的服务器端代码,您可以在comprobante.SetAttributeValue(DatosComprobante[y].NombreDato, objeto["factura"]["comprobante"][DatosComprobante[y].NombreDato]);
方法中看到我在XElement节点中插入属性,因此当属性“fecha”出现在for循环中时,它看起来与我不同从客户端发送。
我认为是禁止反序列化只获取原始字符串的事情,因为当我在调试器中看到“objeto”变量时,日期显示正确。
public XElement retornaNodoXml(JObject objeto)
{
Domicilio domicilio = new Domicilio();
Dato dato = new Dato();
XElement comprobante = new XElement("cfdi" + dato.ComodinCfdi + "Comprobante");
for (int y = 0; y < DatosComprobante.Count; y++)
{
if (objeto["factura"]["comprobante"][DatosComprobante[y].NombreDato] != null)
{
comprobante.SetAttributeValue(DatosComprobante[y].NombreDato, objeto["factura"]["comprobante"][DatosComprobante[y].NombreDato]);
}
}
return comprobante;
}