Html 민첩성 팩 : SelectSingleNode 및 XPath는 Xamarin Forms 플랫폼에서 사용할 수 없습니다.

html-agility-pack xamarin xamarin.forms xpath

문제

Xpath 또는 HTML Selectors를 사용하여 HTML 파일에서 객체를 찾는 방법을 찾아야합니다.

선택기는 Html Agility Pack에서 지원되지 않으므로 XPath를 사용하려고합니다.

아쉽게도 SelectSingleNode (string somexpathvalue)는 Xamarin Forms에서 사용할 수 없습니다. HtmlNode에는 정의가 없습니다.

NuGet에서 System.Xml.XPath가 설치되지 않은 것을 발견했습니다. 시도 할 때 오류가 발생합니다.

심각도 코드 설명 프로젝트 파일 줄 억제 상태 오류 'System.Xml.XPath 4.0.0'패키지를 설치할 수 없습니다. 이 패키지를 '.NETPortable, Version = v4.5, Profile = Profile111'을 대상으로하는 프로젝트에 설치하려고하지만 해당 프레임 워크와 호환 가능한 어셈블리 참조 또는 콘텐츠 파일이 패키지에 포함되어 있지 않습니다. 자세한 내용은 패키지 작성자에게 문의하십시오. 0

System.Xml.Xpath없이 SelectSingleNode를 사용할 수있는 방법이 있습니까?

인기 답변

아니요. Html Agility Pack (HAP) XPath 지원은 System.Xml.XPath *에서 사용할 수있는 .NET XPath 구현을 기반으로하며 System.Xml.XPath 자체에는 Xamarin.Forms 용 버전이 없습니다.

옵션은 해당 플랫폼 특정 프로젝트 (현재 휴대용 Xamarin.Forms 프로젝트 접근법을 사용한다고 가정)에서 XPath를 사용하는 기능을 구현하거나 XPath 대신 HAP의 LINQ API를 사용하여 쿼리를 수행하는 것일 수 있습니다. 필자는 XPath로 작성할 수있는 대부분의 쿼리가 LINQ로 변환 될 수 있다고 생각합니다.

*) HAP 저자의 답변 : https://stackoverflow.com/a/15941723/2998271

**) LINQ 번역에 대한 XPath 예제 : HtmlAgilityPack Windows Phone 8.1 플랫폼 용 Linq 사용



아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.