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 사용