하자 나는이 목록에 'customersFromFile'아래 코드와 C# 엔티티 프레임 워크는
DB
에, 나는 EF는 DB에서 기존의 8000 개 고객을 업데이트 할 것으로 기대 8000 개 고객 11,000 고객이 말을 대신 업데이 트의 삽입하고 고객에게 추가 "및"8000 업데이트 고객 ": 3000이 제대로 인쇄콘솔을 dB로 왼쪽으로 추가 할 수 있습니다. 3000
그러나 DB에기존 8000이 성공적으로 업데이트하고 있지만 지금은 총 19,000 고객을
을제발 도와주세요.
DEMOEntities context = new DEMOEntities();
context.Configuration.AutoDetectChangesEnabled = false;
context.Configuration.ValidateOnSaveEnabled = false;
int i = 0;
foreach (var customerInDB in context.Customers)
{
//Console.WriteLine("Update customer: " + customerInDB.CustomerID.ToString());
customerInDB.Name = customersFromFile[i].Name;
customerInDB.CIC = customersFromFile[i].CIC;
customerInDB.IndustryCode = customersFromFile[i].IndustryCode;
context.Entry(customerInDB).State = EntityState.Modified;
i++;
}
Console.WriteLine("Updated customers: " + i.ToString());
int j = 0;
for (; i < customersFromFile.Count; i++)
{
context.Customers.Add(customersFromFile[i]);
j++;
}
Console.WriteLine("Added to customer:" + j.ToString());
Console.WriteLine("Saving changes to customer...");
context.SaveChanges();
업데이트 2 : 나는 CustomerFromFile 목록을 형성 할 때이 답변 주셔서 감사합니다 톰톰은, 내 실수는 문맥에 고객을 추가 할 수 있습니다. 그것은 발견하는 나에게 시간이 걸렸다이 :(
아, 미안, 어디 그것을 원하기 때문에 당신이 ADD 때문에, 그것은 추가하고 추가되지 않는 이유는 무엇입니까? 질문. 당신이 업데이 트를 확인하려면 , 갱신을 – TomTom