Моно (сенсорный): System.Xml.Schema.Extensions

Я попытался проверить файл XML с помощью ссылки XDocument.Validate, определенный в System.Xml.Schema.Extensions. Однако компилятор говорит, что XDocument «не содержит определения для ‘Validate’ и не может быть найден метод расширения ‘Validate’ типа ‘System.Xml.Linq.XDocument’».

Действительно ли класс System.Xml.Schema.Extensions отсутствует в MonoTouch? И если да, то есть ли другой способ проверки XML, прочитанного в XDocument?

редактировать:

Рассматриваемый класс, по-видимому, также отсутствует в Mono, согласно их документация. Есть ли замена?


person poke    schedule 29.03.2011    source источник


Ответы (2)


MonoTouch основан на профиле Silverlight. Ни Silverlight, ни WinPhone7 не включают System.Xml.Schema.Extensions.

К счастью, у Mono открытый исходный код, так что вы можете взять нужный вам код и добавить его в свой проект:

https://github.com/mono/mono/blob/master/mcs/class/System.Xml.Linq/System.Xml.Schema/Extensions.cs

person jpobst    schedule 29.03.2011
comment
Это идеально, большое спасибо! Я предполагаю, что документация Mono тогда просто ужасно устарела (после проверки сейчас там отсутствует все пространство имен System.Xml.Linq). - person poke; 30.03.2011

Расширения кажутся новыми в версии 3.5 — MonoTouch представляет собой ядро ​​2.0 с включенными битами более поздних версий (например, LINQ).

person Jason    schedule 29.03.2011
comment
Все пространство имен MonoTouch System.Xml относится к .NET 3.5, как описано в их списке сборок, и этот класс появляется быть единственным отсутствующим классом в этом пространстве имен. - person poke; 30.03.2011