Я получаю исключение во время выполнения из приведенного ниже кода. Я думаю, что это не создание первичного ключа (который является идентификатором CustomerID и int). Я использовал Wizard, и у меня есть опыт много лет назад с ADO.NET, но это мой первый проект с использованием Entity Framework 6.0 с DbContext. Я создал файл EDMX, используя сначала «базу данных», поэтому существует реальная база данных. Я не думаю любая другая таблица имеет ассоциацию внешнего ключа с этой таблицей, которая является обязательной, поэтому я думаю (но не уверен), что эта ошибка времени выполнения связана с неспособностью создать новый первичный ключ. Это либо очень простой вопрос, либо сложный вопрос, поэтому я проверю позже.Как создать новый первичный ключ в Entity Framework, сначала?
Пол
[OperationContract]
public void DoWork()
{
try
{
using (var ctx = new MyEDMXdBExistingDatabase())
{
CUSTOMER myCustomerREALLYNEW = new CUSTOMER();
myCustomerREALLYNEW.LastName = "NeWLASTNAME";
myCustomerREALLYNEW.CustomerID = 0; //set primary key to zero and let entity framework create new one automagically? I think this works based on past experience, but it's not working now
ctx.CUSTOMERs.Add(myCustomerREALLYNEW);
ctx.SaveChanges(); //PROBLEM HERE If comment out this line no runtime error
}
}
catch (DbEntityValidationException ex1)
{
Debug.WriteLine(ex1.Message);
}
catch (Exception ex)
{
Debug.WriteLine(ex.Message);
}
finally
{
}
}
Какое исключения вы получаете, когда вы создаете клиент? пост. –
Спасибо Мохсен Эшмаипур. Вы выигрываете бонус. В самом деле, оказывается, есть необходимое ненулевое поле, которое необходимо заполнить. Как только я это сделал, проблема исчезла. Я отредактирую свой вопрос, если этот вопрос не будет удален модератором. – PaulDecember