gpt4 book ai didi

c# - 如何在 asp.net 的 SQL 表中存储 IEnumerable<> 数据值?

转载 作者:行者123 更新时间:2023-11-30 21:09:42 24 4
gpt4 key购买 nike

我正在使用 HtmlAgilityPack 从网页检索信息,目前,我正在使用它在按钮单击方法中使用 ListView 控件在页面本身上显示值。

 protected void Button1_Click(object sender, EventArgs e)
{
string url = TextBox1.Text.ToString();
var webGet = new HtmlWeb();
var document = webGet.Load(url);
// Below code crawl the data and store in generic IEnumerable<T> fashion //
var TheWeb =
from info in document.DocumentNode.SelectNodes("//div[@class='article-listing']//div[@class='media-data']")
from link in info.SelectNodes("h4//a").Where(x => x.Attributes.Contains("href"))
from content in info.SelectNodes("p").Where(y => y.HasAttributes != true)
from author in info.SelectNodes("p[@class='article-meta']//a[@rel='author']").Where(z => z.Attributes.Contains("href"))
from date in info.SelectNodes("p[@class='article-meta']//span")
select new
{
LinkURL = link.Attributes["href"].Value,
Text = content.InnerText,
Author = author.InnerText,
Date = date.InnerText
};
lvLinks.DataSource = TheWeb;
lvLinks.DataBind();
}

但现在我想将数据存储在 SQL Server 中,并希望使用某些函数(而不是单击按钮)运行代码。

为此,我想以其他形式存储数据,而不是使用 LINQ 提取值的 IEnumerable<> 样式。

请提出建议。

最佳答案

你可以有一个具有结构的自定义类

public class ParseData
{
public string LinkURL { get; set; }
public string Text { get; set; }
public string Author { get; set; }
public string Date { get; set; }
}

用你的查询填充它

var TheWeb = 
from info in document.DocumentNode.SelectNodes("//div[@class='article-listing']//div[@class='media-data']")
from link in info.SelectNodes("h4//a").Where(x => x.Attributes.Contains("href"))
from content in info.SelectNodes("p").Where(y => y.HasAttributes != true)
from author in info.SelectNodes("p[@class='article-meta']//a[@rel='author']").Where(z => z.Attributes.Contains("href"))
from date in info.SelectNodes("p[@class='article-meta']//span")
select new ParseData
{
LinkURL = link.Attributes["href"].Value,
Text = content.InnerText,
Author = author.InnerText,
Date = date.InnerText
};
var parseData = TheWeb.ToList();

现在使用 System.Xml.Serialization.XmlSerializer 将此数据序列化为 XML。将此 XML 存储在您的数据库中并在需要时检索。

Tutorial explaining how to Serialize object in XML and Deserialize back to object .

希望这对你有用。

关于c# - 如何在 asp.net 的 SQL 表中存储 IEnumerable<> 数据值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8909918/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com