我很长一段时间都遇到了麻烦。让我们想象一下这个例子:
public class Coordinate {
public int id {get;set;}
public int x {get;set;}
public int y {get;set;}
}
public class Planet {
public int id {get;set;}
public string name {get;set;}
public Coordinate coordinate {get;set;}
}
我创建了两个模型,模型 Planet 具有模型 Coordinate 作为属性。现在想象一下我在代码中的某处创建了一个坐标并将其存储在数据库中。想象一下这是坐标:
Coordinate c = new Coordinate();
c.x = 1;
c.y = 2;
然后我将它添加到我的数据库并保存。
但是当我创建一个星球并且我这样做时:
planet.coordinate = c;
然后我尝试将它添加到数据库我有以下错误:
Microsoft.EntityFrameworkCore.dll 中出现“Microsoft.EntityFrameworkCore.DbUpdateException”类型的异常,但未在用户代码中处理
附加信息:更新条目时出错。有关详细信息,请参阅内部异常。
我知道我可以将属性更改为public Coordinate coordinate
,public int coordinate_id
但我想使用 Coordinate 模型来执行此操作。
我正在使用 ASP NET CORE 1.0
肿块