Entity FrameWork - Исключение в SaveChanges - PullRequest
0 голосов
/ 17 сентября 2011

У меня есть этот код, сохраняющий простую сущность:

ExecutionEngineEntities db = new ExecutionEngineEntities();
Task task = new Task();
task.Message = "Test";
task.Result = "Test";
task.Name = "Test";
db.Tasks.AddObject(task);
db.SaveChanges();

Это исключение:

A first chance exception of type 'System.Data.UpdateException' occurred in System.Data.Entity.dll
Unable to update the EntitySet 'Tasks' because it has a DefiningQuery and no <InsertFunction> element exists in the <ModificationFunctionMapping> element to support the current operation.
The program '[6092] WebDev.WebServer40.EXE: Managed (v4.0.30319)' has exited with code 0 (0x0).

Это код создания таблицы:

CREATE TABLE [dbo].[Tasks](
    [ID] [int] IDENTITY(1,1) NOT NULL,
    [Name] [nchar](50) NULL,
    [Message] [nchar](1000) NULL,
    [Result] [nchar](1000) NULL
) ON [PRIMARY]

После поиска в Google я обнаружил, что у людей в режиме, которые получили эту ошибку, есть проблемы с отношением, это не мой случай

Спасибо

1 Ответ

2 голосов
/ 17 сентября 2011

Может быть, ответ здесь может помочь вам: У него есть DefiningQuery, но нет элемента InsertFunction ... err

Возможно, в модели EF настроено, что этот объект являетсявид, а не стол.Представления не поддерживают операции создания, обновления или удаления, поэтому вы не можете вставить.

...