我正在编写一个爬虫,它应该去一个网站,从那里提取一些数据,然后将它存储到一个数据库中,问题是爬虫还应该更新之前运行中已经找到的数据。
返回从 EF POCO 中的站点解析的ParseDataPage
信息,其属性之一是唯一标识符(也是 db 表中的主键),我如何告诉 EF 插入/添加对象?
class Program
{
static void Main()
{
var context = (adCreatorEntities) DbContextFactory.GetInstance().GetDbContext<adCreatorEntities>();
var crawler = new DataCrawler();
crawler.Login();
var propertyIds = crawler.GetPropertyIds();
foreach (var id in propertyIds)
{
var poco = crawler.ParseDataPage(id);
context.Properties.Add(poco); //<-- How can I tell EF to update if the record exists or to insert it otherwise??
context.SaveChanges();
}
context.SaveChanges();
if (crawler.LoggedIn)
crawler.Logout();
}
}