Linq to XML - я могу сделать это со списком, но не со списком <> - PullRequest
0 голосов
/ 17 ноября 2010

Вот как я формирую свой xml из ListBox

   new XElement("City", lstCities.Items
                            .Cast<ListItem>()
                            .Select(x => new XElement("TBL_Cities", 
                                new XElement ("CityName",x.Text),
                                new XElement("TripID",TripID)))

Теперь, может быть, потому что он близок к концу дня, но я не могу понять, как это сделать с помощью List <>У меня есть (его список lstImages) Я в основном хочу записать файл байтов в XML, например, города (так как в списке 1-3 изображения)

Вот часть, которая не работает

new XElement("TBL_Photo",lstImages
                                .Cast<byte>()
                                .Select(x => new XElement("TBL_Photo", 
                                    new XElement ("Photo",x),
                                    new XElement("TripID",TripID))))

Ответы [ 2 ]

1 голос
/ 17 ноября 2010

Насколько я могу судить, ваш код против List<byte> в основном правильный. У вас есть ненужный вызов .Cast (но он ничего не сломает). Ваша главная проблема - слишком много закрывающих скобок, если только вы не видите больше кода, который вы нам не показываете.

new XElement("TBL_Photo",
     lstImages.Select(x => new XElement("TBL_Photo",  
                  new XElement ("Photo",x), 
                  new XElement("TripID",TripID)))
1 голос
/ 17 ноября 2010

Это будет зависеть от того, как определен listImages, но при условии, что это List<List<byte>>, тогда просто

  new XElement("TBL_Photo",lstImages 
                //.Cast<byte>()  Not needed
                .Select(x => new XElement("TBL_Photo",  
                    new XElement ("Photo",x), 
                    new XElement("TripID",TripID)))) 

Это предполагает, что XElement разрешает List в качестве параметра.

Youздесь не нужен актерский состав.Вам это нужно только потому, что lstCities.Items был ListItemCollection, который не реализует IEnumerable<ListItem>.

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