Попытка привязать результаты запроса linq-xml к gridview - PullRequest
0 голосов
/ 13 июля 2010

Я пытаюсь связать запрос linq-to-xml с сеткой.

У меня есть следующий XML

 <?xml version="1.0" encoding="utf-8" ?> 
 <thesaurus xmlns="x-schema:tsSchema.xml">
 <diacritics_sensitive>0</diacritics_sensitive>
    <expansion>
        <sub>satellite navigation</sub>
        <sub>sat-nav</sub>
        <sub>Sat Nav</sub>
        <sub>tom tom</sub>
    </expansion>
    <expansion>
        <sub>Car</sub>
        <sub>Vehicle</sub>
        <sub>Motor</sub>
        <sub>Wheels</sub>
        <sub>Ride</sub>
    </expansion>
 </thesaurus>

Я использую следующий запрос Linq

        var query = from term in xDocumentTerms.Elements(tns + "thesaurus").Elements(tns + "expansion").Elements(tns + "sub")
                    where term.Value == val
                    select term.Parent.Descendants().ToList<XElement>();


        gridview_RelatedTerms.DataSource =query;
        gridview_RelatedTerms.DataBind();

, который возвращает данные, однако связывает количество и емкость списка, в отличие от того, что я действительно хотел бы XElement.Value.

1 Ответ

0 голосов
/ 13 сентября 2010

Я думаю, что проблема в том, что вы привязываетесь не к списку XElements, а к запросу, создающему список списков XElement из-за last () .ToList ();Применительно к каждому элементу выбран не весь запрос.

Если сомневаетесь, измените var на List и отладьте оттуда;

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...