我有一些标签需要插入到标签数据库中。Tag 数据库只有一列“tag”,它也是主键。这是在插入时防止重复的技巧。
所以现在是代码和问题。
foreach (string tagval in tagarray)
{
try
{
var tag = new Tag
{
Tag1 = tagval
};
db.AddToTags(tag);
}
catch
{
}
}
db.SaveChanges();
这种方法的问题是,SaveChanges()
如果早期发现重复,则在调用后,程序存在而没有保存其他标签。如果我SaveChanges()
在每次添加到表后调用,程序将变得低效并且需要进行大量调用。即使在较早的插入失败后如何继续插入?
也欢迎替代解决方案。