0

我正在使用一个名为scrap的操作作为

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 和 Text。为此,我尝试使用一个名为WikiModel的模型作为

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

现在我该如何走得更远,以便我可以在我的视图中显示所有信息。我们可以使用 来做到这一点,wikimodel但是如何在其中添加所有scrap操作的数据wikimodel?我不知道如何操纵他select 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 回答