Может кто-нибудь объяснить, почему это XMLLinq для запроса XML создание пустых элементов из XML
<?xml version="1.0" encoding="utf-8"?>
<items>
<item id="77" cityID="EE12345" cityDatum="15.2.2010. 11:28:35" />
</items>
при использовании Query
Dim c = From items In st.Descendants _
Where [email protected] IsNot Nothing _
Select New myStorage With {.id = [email protected], .cityID = [email protected], .cityDatum = [email protected]}
storage = c.ToList
в результате чего в списке (из MyStorage) с двумя пунктами - один со всеми empty (ничего), второй со значениями, указанными в xml выше?
Я решен вопрос, добавив
Where [email protected] IsNot Nothing _
перед тем Seletct Новый MyStorage, но у меня есть ощущение, что я не должен делать это.
Я воссоздал это в C#, storage.xml точно такой же, как указано выше.
private void Form1_Load(object sender, EventArgs e)
{
XDocument st;
st = XDocument.Load("C:\\storage.xml");
Object c = from items in st.Descendants()
select new {id = items.Attribute("id"), cityID = items.Attribute("cityID"), cityDatum = items.Attribute("cityDatum")};
}
Если вы, как некоторые не могут воспроизвести эти результаты, вот скриншот:
screenshot http://www.incito.hr/15.2.2010.png
Я пробовал это (по общему признанию, на C#) и получаю только один элемент в 'storage', с или без предложения' Where' на месте. Не могли бы вы показать нам короткую, но полную программу (a la http://www.yoda.arachsys.com/csharp/complete.html), которая демонстрирует проблему? – AakashM
Я расширил вопрос с примера C# и снимка экрана – Vnuk