クロスプラットフォームのXamarinアプリケーションでHtmlAgilityPackを使用してHTMLを解析する

c# html-agility-pack xamarin

質問

私はオンラインカレンダーを解析して、そのカレンダーに投稿されたイベントを私のクロスプラットフォームアプリケーションに表示させようとしています。これは私がこれまで持っていたコードです。

 var html = @"http://html-agility-pack.net/";
 HtmlWeb web = new HtmlWeb();
 HtmlDocument htmldoc = new HtmlAgilityPack.HtmlDocument();
 var htmlDoc = web.LoadFromWebAsync(html);
 HtmlNodeCollection node=htmlDoc.DocumentNode.SelectSingleNode("//body");

私が得ているエラーは次のとおりです。

"'タスクHtmlDocument'には" DocumentNode "の定義はなく、 'TaskNoteDocument'タイプの最初の引数を受け入れる拡張メソッド 'DocumentNode'はありません(usingディレクティブまたはアセンブリ参照がありませんか?

私はXamarinのNuGetパッケージマネージャを使用してHtmlAgilityPackをインストールしました。これはプロジェクト全体の参照にあり、 "HtmlAgilityPackを使用しています"を使用しています。私はオブジェクトブラウザでHAPを見ましたが、明らかに "DocumentNode"プロパティがあり、なぜそれがあるとは思わないのか混乱しています。

私はそれが何であるか分からない、助けてください。

受け入れられた回答

非同期メソッドを呼び出すときに待つ必要があります

// htmlDoc is a Task<HtmlDocument>
var htmlDoc = web.LoadFromWebAsync(html);

// htmlDoc is a HtmlDocument
var htmlDoc = await web.LoadFromWebAsync(html);



ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ