我有一个对象列表,我将其作为参数传递给我的Azure API。
我已将列表包装到名为CheckAvailabilityRequest
的对象中。
class CheckAvailabilityRequest {
public List<MyObject> MyObjects { get; set; }
...
}
当我在服务器上收到请求时,我创建了一个对象MyObject2
并将List<MyObject>
分配给它。
class MyObject2 {
List<MyObject> MyObjects { get; set; }
}
MyObject2.MyObjects = request.MyObjects;
致电
context.SaveChanges();
我得到以下异常:
System.Data.SqlClient.SqlException:违反PRIMARY KEY约束&#39; PK_aaa.MyObject&#39;。无法在对象&#39; aaa.MyObject&#39;中插入重复键。重复键值为(594229de-8384-4b3c-8c8f-4d081918f145)。
我知道这是因为对象的断开状态。
数据库中已存在MyObject
列表。
但是必须有一种方法可以简单地分配现有的MyObjects
而不将它们添加到数据库中,是吗?