我已经编写了一个 Linq to Xml 查询,从 xml 创建实体,我在 xml 中有一个可能为空白的 DateTime 字段,我需要为实体中的字段分配相同的空白,我收到错误“字符串不被识别为日期时间”
XDocument xDocument = XDocument.Load(@"c:\Sample.xml");
var _pndList =
from plist in
xDocument.Descendants("HEADER")
select new PND()
{
DeliveryDate =
DateTime.ParseExact(Convert(plist, "DELIVERYDATE"), "yyyyMMdd",
CultureInfo.InvariantCulture, DateTimeStyles.None),
LoadClosed =
DateTime.ParseExact(Convert(plist, "LOADCLOSEDDATETIME"), "yyyyMMddhhmmss",
CultureInfo.InvariantCulture, DateTimeStyles.None),
TrailerId = Convert(plist, "TRAILERID"),
TripAndRouteId = Convert(plist, "TRIPROUTEID"),
StoreCode = plist.Ancestors("STORE").Attributes().First().Value,
Product =
(from mlist in
plist.Ancestors("STORE").Descendants("RECORD")
select new PreNotifiedProduct()
{
DepotCode = Convert(plist, "DEPOTCODE"),
MU = Convert(mlist, "MU"),
CaseOrUnitQuantity =
System.Convert.ToInt32("0" + Convert(mlist, "NOOFCASES")),
OuterCaseHeight =
System.Convert.ToInt32("0" +
Convert(mlist, "OUTERCASEHEIGHT")),
OuterCaseLength =
System.Convert.ToInt32("0" +
Convert(mlist, "OUTERCASELENGTH")),
OuterCaseWidth =
System.Convert.ToInt32("0" + Convert(mlist, "OUTERCASEWIDTH")),
ProductCode = Convert(mlist, "TPNB"),
UnitsPerCase =
System.Convert.ToInt32("0" + Convert(mlist, "UNITSPERCASE")),
UseByDate =
DateTime.ParseExact(Convert(plist, "LOADCLOSEDDATETIME"),
"yyyyMMddhhmmss",
CultureInfo.InvariantCulture,
DateTimeStyles.None)
}).ToList()
};
}
在实体 PreNotifiedProduct() UseByDate 是 DateTime