ef 增加或者更新的习惯思维

首先申明是我的习惯思维,经常这样写:

var item=db.tableName.FirstOrDefault(ii=>....);
if(item==null)
{
    item=new ...;
    item.columnA=...;
    item.columnB=...;
    db.tableName.Add(item);
}
else
{
    item.columnA=...;
    item.columnB=...;
}
db.SaveChanges();

一直觉得别扭,但似乎也没什么好的办法。

习惯思维就是首先要把item设置好,才能Add。

今天灵光一闪,试了试先Add然后再去设置item,居然ok,哈哈,so

var item=db.tableName.FirstOrDefault(ii=>....);
if(item==null)
{
    item=new ...;
    db.tableName.Add(item);
}
item.columnA=...;
item.columnB=...;
db.SaveChanges();

顺眼多了,您觉得呢?

原文地址:https://www.cnblogs.com/catzhou/p/10038693.html