Я, вероятно, делать что-то действительно глупо, но я не могу получить эту работу:Query простой XDocument в LINQ
var xmlQuery = from i in doc.Descendants("Item")
select new TriggerItem()
{
CreatedDate = DateTime.Now,
ItemIdentifier = i.Attribute("itemCode").Value,
Name = i.Attribute("name").Value,
ProductIdentifier = (i.Attribute("productCode") != null) ? i.Attribute("productCode").Value : null
};
документ является объектом XDocument, который при отладке, я могу подтвердить, что загружен следующий XML :
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<Items xmlns="http://mywebsite">
<Item itemCode="12345" productCode="" name="testing" categoryId="">
</Item>
</Items>
так xmlQuery.Count() изгоняются возвращает 1, в качестве одного пункта в THER, но он продолжает возвращаться 0!
IV также пытался:
xmlQuery = from i in doc.Descendants("Items")
и
xmlQuery = from i in doc.Descendants("Item")
Даже без создания нового объекта TriggerItem, он не будет ничего возвращать ... какие-либо идеи ?? : '(
Спасибо так много, я удалил XMLNS attrbute и он работал, где действительно ли это xmlns на самом деле? Или он даже должен быть там? Все, что я хочу сделать в этом xml, это сказать это XSD размещено и сохранить его уникальным. – 2009-07-16 12:42:31
Страница на странице http://tempuri.org/ дает хорошее объяснение того, для чего используется пространство имен XML, и предоставляет ссылки на дополнительную информацию. Не следует отвлекаться на то, что страница рассказывает о веб-сервисах. –
Еще раз большое спасибо! – 2009-07-16 13:07:57