foreach (var item in order.MyFiles)
{
var newFile = adapter.db.File.CreateObject();
newFile.Name = item.FileName;
adapter.db.File.AddObject(newFile);
adapter.db.SaveChanges();
item.MyFile.Add(new MyFile { FileID = newFile.FileID });
adapter.db.SaveChanges();
}
foreach (var item in tempFilesList)
{
adapter.db.DeleteObject(item);
}
adapter.db.SaveChanges();
Đó là mã bản sao các hàng trong bảng MyFile
, ví dụ như nếu lặp loop 3 lần tôi thấy 6 hàng (3 x 2 * adapter.db.SaveChanges()
???)C# Không thể xác định vào cuối chủ yếu của mối quan hệ
Nhưng, nếu tôi chỉ có một số adapter.db.SaveChanges();
(cái cuối cùng) tôi nhận được lỗi
Không thể xác định kết thúc chính của mối quan hệ 'my_dbModel.FK_MyFile_File'. Nhiều thực thể được thêm có thể có cùng một khóa chính.
Tôi cho rằng nguyên nhân là trong trường hợp đó nó không cam kết các mặt hàng adapter.db.File.AddObject(newFile);
trước khi đưa chúng vào item.MyFile.Add(new MyFile { FileID = newFile.FileID });
Nhưng tôi có thể sai, bất kỳ ý tưởng nào để khắc phục?
Bạn đã lưu lại đêm của mình, cảm ơn nhiều :) – Tony
Giải quyết được sự cố của tôi! – HuckIt