我有很多相关问题,但我会将问题分解为单独的帖子。
我的XML是<Person>.....<Skills><Skill>Resus<Skill></Skills></Person>
我的代码是:
var products1 = from prd in xDoc.Descendants("Person")
select new BusinessEntityLayer.Personnel
{
PayrollNo = (String)prd.Element("PayrollNumber"),
FirstName = (String)prd.Element("Name"),
LastName = (String)prd.Element("Surname"),
StreetAddress = (String)prd.Element("StreetAddress"),
Suburb = (String)prd.Element("Suburb"),
HomePhone = (String)prd.Element("HomePhone"),
MobilePhone = (String)prd.Element("MobilePhone"),
PagerNumber = (String)prd.Element("PagerNumber"),
Email = (String)prd.Element("Email"),
RecordType = (String)prd.Element("RecordType"),
Skills = (List<String>)prd.Element("Skills")
我的Personnel类是强类型的。这一切都与Skills系列完美结合。技能是List<Skill>
,但我的代码不会编译错误 - XLInq.Element
到Generic.List
...我也不能使用String[]
(重构我的商务舱)同样的结果。
人们在这里使用什么策略?
答案 0 :(得分:1)
我认为你应该可以做这样的事情:
Skills = prd.Descendants("Skill").Select(e => new Skill(e.Value)).ToList(),