假设我有以下XML:
<Account>
<AccountExpirationDate>6/1/2009</AccountExpirationDate>
</Account>
我想使用LINQ to XML将其解析为一个我称为Account的对象:
public class Account {
public DateTime? AccountExpirationDate { get; set; }
}
这是我尝试过的C#代码,但不允许我使用null:
var accountSettings =
from settings in templateXML.Descendants("Account")
select new Account {
AccountExpirationDate =
string.IsNullOrEmpty(settings.Element("AccountExpirationDate").Value)
? DateTime.Parse(settings.Element("AccountExpirationDate").Value)
: null
};
如果该元素存在于XML中,我是否可以只为AccountExpiration分配一个日期?在我的业务逻辑中,该值为null是可以接受的。谢谢!
最佳答案
var accountSettings =
from settings in templateXML.Descendants("Account")
select new Account {
AccountExpirationDate =
string.IsNullOrEmpty((string)settings.Element("AccountExpirationDate"))
? (DateTime?)null
: DateTime.Parse(settings.Element("AccountExpirationDate").Value)
};