Tôi có một mô hình dữ liệu Thực thể đơn giản (sử dụng VS2010) mà tôi đảo ngược thiết kế từ một cơ sở dữ liệu SQL Server đơn giản có chứa ba bảng không liên quan.Khung thực thể - loại edm được ánh xạ nhiều hơn một
Tôi cố gắng để lưu dữ liệu vào cơ sở dữ liệu bằng cách sử dụng đoạn mã sau:
var dbOptions = new ARC_WHENTECHModel.TEMP_LANDED_WHENTECH_OPTION_POSITION();
//first map fields required for standard di processing
dbOptions.OPTION_POSITION_SOURCE_ID = webSvcOption.TDR + "_" + webSvcOption.CNTR + "_" + webSvcOption.CRV;
dbOptions.INSERTED_DT = DateTime.Now;
dbOptions.CURRENT_IND = "Y";
//now map the data we've pulled from the web service call
dbOptions.CA = webSvcOption.CA;
dbOptions.CDTP = webSvcOption.CDTP;
dbOptions.CMD = webSvcOption.CMD;
dbOptions.CNTR = webSvcOption.CNTR;
dbOptions.CPP = webSvcOption.CPP;
dbOptions.PDTP = webSvcOption.PDTP;
dbOptions.SPR = webSvcOption.SPR;
dbOptions.TDR = webSvcOption.TDR;
context.AddToTEMP_LANDED_WHENTECH_OPTION_POSITION(dbOptions);
context.SaveChanges();
nhưng tôi nhận được ngoại lệ sau đây:
An EdmType cannot be mapped to CLR classes multiple times. The EdmType 'RDLMServiceTier.TEMP_LANDED_WHENTECH_FUTURES_POSITION' is mapped more than once.
tại dòng sau (base.AddObject) trong thiết kế .cs code:
[global::System.CodeDom.Compiler.GeneratedCode("System.Data.Entity.Design.EntityClassGenerator", "4.0.0.0")]
public void AddToTEMP_LANDED_WHENTECH_OPTION_POSITION(TEMP_LANDED_WHENTECH_OPTION_POSITION tEMP_LANDED_WHENTECH_OPTION_POSITION)
{
base.AddObject("TEMP_LANDED_WHENTECH_OPTION_POSITION", tEMP_LANDED_WHENTECH_OPTION_POSITION);
}
Mọi người có thể vui lòng cho biết những gì tôi có thể làm sai không? Tôi không có nhiều kinh nghiệm với Entity Framework (nó luôn luôn "chỉ hoạt động" trong quá khứ). Tôi đoán bước tiếp theo có thể phản ánh mã EF nhưng điều đó khá phức tạp vì tôi đang gỡ lỗi trên một máy từ xa mà tôi không có phạm vi lớn để cài đặt thêm phần mềm.
Cảm ơn
Rob.
Điều này thường chỉ ra rằng có một lớp 'TEMP_LANDED_WHENTECH_OPTION_POSITION' khác trong dự án, ngay cả khi nó ở trong một không gian tên khác. Có lẽ mô hình đã được tạo ra hai lần bằng cách nào đó? –
Đó là nó! Bằng cách nào đó tôi phải tạo ra một bản sao của tập tin mô hình. Rất cám ơn Gert. –