включить XPathSelectElement в переносимую библиотеку классов

Как я могу использовать XPathSelectElement в переносимой библиотеке классов? Когда я пытаюсь включить System.Xml.XPath сборку в проект, я получаю следующую ошибку:

Тип «System.Xml.Linq.XElement» определен в сборке, на которую нет ссылок. Вы должны добавить ссылку на сборку «System.Xml.Linq, версия = 2.0.5.0, культура = нейтральная, PublicKeyToken = 31bf3856ad364e35».

В моих переносимых библиотеках классов уже есть ссылка на System.Xml.Linq.


person Shivangi    schedule 18.12.2013    source источник


Ответы (2)


К сожалению, MSDN показывает, что, начиная с .NET 4.5, эти методы расширения не поддерживаются в переносимых библиотеках классов. Если бы они поддерживались, они отображали бы изображение PCL icon. Однако похоже, что Microsoft предоставила пакет Nuget, который предоставляет по крайней мере некоторые функции в пространстве имен System.Xml.XPath.

person Stephen Rudolph    schedule 10.09.2014

Поскольку XPathSelectElement объявлен в System.Xml.Linq.dll, вы также должны сослаться на него.

Дополнительные сведения можно найти здесь.

person Aleksei Poliakov    schedule 18.12.2013
comment
Я уже ссылался на него в проекте, и он все еще дает ту же ошибку. - person Shivangi; 19.12.2013
comment
Используете ли вы метод Parse для получения экземпляра XElement? Если да, не могли бы вы попробовать сделать это: (XDocument.Parse(str) as XDocument).XPathSelectElement? - person Aleksei Poliakov; 19.12.2013