Tôi đang cố gắng thực hiện chèn đơn giản bằng khóa ngoài, nhưng có vẻ như tôi cần sử dụng db.SaveChanges()
cho mỗi lần chèn bản ghi. Làm cách nào tôi có thể quản lý để chỉ sử dụng một số db.SaveChanges()
ở cuối chương trình này?Tại sao tôi không thể chèn bản ghi với khóa ngoài trong một yêu cầu máy chủ duy nhất?
public static void Test()
{
using (var entities = new DBEntities())
{
var sale =
new SalesFeed
{
SaleName = "Stuff...",
};
entities.AddToSalesFeedSet(sale);
var phone =
new CustomerPhone
{
CreationDate = DateTime.UtcNow,
sales_feeds = sale
};
entities.AddToCustomerPhoneSet(phone);
entities.SaveChanges();
}
}
Sau khi chạy đoạn mã trên tôi nhận được ngoại lệ này:
System.Data.UpdateException: Một lỗi đã xảy ra khi cập nhật các mục. Xem InnerException để biết chi tiết. Giá trị được chỉ định không phải là một thể hiện của một loại hằng số hợp lệ Tên tham số: giá trị.
EDIT: Mã ví dụ đã thay đổi và ngoại lệ trả về được thêm vào.
Hiển thị thêm chi tiết về cách bạn nhận biến "tệp"? –
@Andrew: Đã thêm tệp biến nguồn. –
Dường như với tôi bạn có những thứ hơi lạc hậu - bạn thêm một mục vào DirectorySet với một tham chiếu đến tập tin - nó không phải là cách khác xung quanh ?? Một tệp nằm bên trong một thư mục - vì vậy tệp nên tham chiếu đến thư mục - bạn có một mục nhập Thư mục và bất kỳ số Tệp nào tham chiếu đến đó? –