我正在尝试在插入后更新多对多字段,但没有任何变化。
我在工厂表和网格表之间存在多对多关系。
网格就像
id名称:
1 A1
2 A2
map_plant_grid就像
plantid gridid:
280002 2
例如,我想将2更改为1,但数据库中没有任何变化。
public bool AddGrids(plant plant,string text)
{
// Old plant.grid = C7
//text = C2 (in database)
plant.grid.Clear();
bool flag = true;
foreach (var item in text.Split(','))
{
var grd = entities.grid.FirstOrDefault(x => x.name == item);
if (grd != null)
{
plant.grid.Add(grd);
}
else
{
plant.grid.Clear();
flag = false;
break;
}
}
entities.SaveChanges();
return flag;
}
调试时看起来不错。并更改网格列表,但不保存到数据库。当我重试时,我正在获得旧的网格值。所以我只能插入,但插入后不能更改。
可能是什么问题?