0

スクラップと呼ばれるアクションを使用しています

public ActionResult Scrap()
 {
    var webGet = new HtmlWeb();
    var document = webGet.Load(Url);
    var wikians = from info in document.DocumentNode.SelectNodes("//div[@id='results']")
                  from link in info.SelectNodes("p//a").Where(x => x.Attributes.Contains("href"))
                  from content in info.SelectNodes("p").Where(y => y.HasAttributes != true)
                  select new
                    {
                      LinkURL = link.Attributes["href"].Value,
                      Text = content.InnerText                             
                    };

 return View();
}

ここで、すべてのLinkURLとテキストを表示したいと思います。そのために私はWikiModelと呼ばれるモデルを次のように使用しようとしました

public class WikiModel
{
  public string url { get; set; }
  public string content { get; set; }
}

ここで、ビューにすべての情報を表示できるように、さらに先に進むにはどうすればよいですか。これを使用して行うことができますが、これにすべてのアクションのデータwikimodelを追加するにはどうすればよいですか?モデルにデータを保存するために彼を操作する方法がわかりません。scrapwikimodelselect newLINQ

4

2 に答える 2

2

まずWikiModel、クエリからオブジェクトのリストを返す必要があります。

 var wikians = from info in document.DocumentNode.SelectNodes("//div[@id='results']")
                  from link in info.SelectNodes("p//a").Where(x => x.Attributes.Contains("href"))
                  from content in info.SelectNodes("p").Where(y => y.HasAttributes != true)
                  select new WikiModel
                    {
                      url = link.Attributes["href"].Value,
                      content = content.InnerText                             
                    };

これを次のようにビューに渡すことができますModel

return View(wikians);

ビューでは、を介してこのリストにアクセスできるようになりましたModel

于 2012-05-28T17:40:35.970 に答える
0
public ActionResult Scrap()
 {
    var webGet = new HtmlWeb();
    var document = webGet.Load(Url);
    var wikians = from info in document.DocumentNode.SelectNodes("//div[@id='results']")
                  from link in info.SelectNodes("p//a").Where(x => x.Attributes.Contains("href"))
                  from content in info.SelectNodes("p").Where(y => y.HasAttributes != true)
                  select new WikiModel

                    {
                      LinkURL = link.Attributes["href"].Value,
                      Text = content.InnerText                             
                    };

 return View(wikians);
}
于 2012-05-28T17:43:24.393 に答える