【发布时间】:2016-04-07 13:22:20
【问题描述】:
我正在尝试从某个网页中抓取数据并将其插入数据库。我在数据库中只有一个名为 Product 的表,其中包含 ProductID、ProductName、ProductPrice,就像您可以从使用 ADO.net 实体数据模型生成的模型中看到的那样
public partial class Product
{
public int ProductID { get; set; }
public string ProductName { get; set; }
public string ProductPrice { get; set; }
}
我是 asp.net mvc 的新手(3 天前开始学习它)所以它让我有点困惑,并且无法弄清楚在哪里制作新方法来抓取数据并将其放入数据库。 我试图在 ProductController 中创建新的 ActionResult ScrapData() 方法,但是当涉及到 db.SaveChanges() 时,我得到了 ValidationError
public ActionResult ScrapData()
{
List<Product> product = new List<Product>();
HtmlDocument doc = new HtmlWeb().Load("http://www.idea.rs/Proizvodi");
foreach (var node in doc.DocumentNode.SelectNodes("//div[@class='g2 bp_l_1of4 bp_m_1of3 bp_s_1of2 bp_xs_1of1 item ']"))
{
Product p = new Product();
p.ProductName = node.SelectSingleNode(".//span[@class='item_title']").InnerText;
p.ProductPrice = node.SelectSingleNode(".//span[@class='price']").InnerText;
product.Add(p);
}
for (int i = 0; i < product.Count; i++)
{
db.Products.Add(product[i]);
db.SaveChanges();
}
return View(db.Products.ToList());
}
感谢任何帮助。
【问题讨论】:
-
你得到了什么确切的错误?在这里发帖
-
EntityFramework.dll 中出现“System.Data.Entity.Validation.DbEntityValidationException”类型的异常,但未在用户代码中处理其他信息:一个或多个实体的验证失败。有关详细信息,请参阅“EntityValidationErrors”属性。
-
ValidationErrors是什么
标签: c# asp.net asp.net-mvc asp.net-mvc-4