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

时间:2023-12-21 23:56:26

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

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();

顺眼多了,您觉得呢?