Заполнение древовидного представления с помощью XSD, извлеченного из столбца XML с использованием linq - PullRequest
1 голос
/ 14 января 2011

У меня есть столбец xml, содержащий содержимое загруженных файлов xsd. Я использую linq для получения файлов

var xsd = from r in RegulatoryAuthoritySchema
    where r.XsdTypeID == 2
    where r.MajorSchemaVersion == 1
    where r.MinorSchemaVersion ==0
    where r.XsdStatusID == 2
    select r.XsdData;

Моя первая проблема заключается в том, что я могу вернуть xsd в виде строки, но не в виде правильно сформированного объекта XML.

Например, если я пытаюсь разобрать его как XElement или XMLDocument, я получаю «Данные на корневом уровне недействительны. Строка 1, позиция 1. ' Я предполагаю, что это связано с тем, что он получен из источника xsd, а не из xml. Поэтому XMLDocument ожидает спецификации в объявлении.

Моя вторая проблема заключается в использовании возвращенного xsd в качестве динамического источника для дерева WPF. Я видел статические примеры отображения XSD в древовидном представлении WPF, определяя их в XData ресурса xmldataprovider в XAML. У XMLDataprovider есть свойство source, но для этого нужны URI или есть свойство документа, которое примет XMLDocument, если я смогу разобрать первую проблему.

Мое приложение WPF4 и использует MVVM, поэтому в идеале xsd должен быть представлен в виде свойства ViewModel, к которому затем привязывалось древовидное представление, но это уже другой пост.

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