我正在尝试从Sql Server数据库和MySql数据库同步两个表。我有一个使用ADO.NET的两个数据库模型的应用程序,它提供了一个WCF服务,用于将数据从MySql数据库发送到SqlServer数据库。在服务使用者中,我有以下代码:
使用异步调用。
private void proxy_DoWorkCompleted(object sender, DoWorkCompletedEventArgs e)
{
dbEntities db = new dbEntities(); //local db object
foreach (var item in e.Result)
{
if (!db.Table.Any(x => x.someID == item.some_id)) //This line is supposed to check for existing entries
{
db.Table.Add(new Something()
{
ID = item.some_id,
Name = item.name,
Description = item.description,
....
});
db.SaveChanges();
}
}
}
我遇到的问题是if语句没有给我我期望的内容,而且我得到了主键违规例外。我究竟做错了什么?