Вставка строк в SQL Server с помощью EF + WCF Data Services .Net 4 Framework

Недавно я развернул службу данных .Net 4 WCF, размещенную на IIS 6, в корпоративной среде (интрасеть) с использованием Entity Framework. Я обращаюсь к службе с помощью OData и успешно извлекаю данные из таблиц, размещенных на SQL Server 2005.

Проблема в том, что я не могу вставить новые строки. Что я сделал до сих пор, так это установил права объекта на ВСЕ -> т.е.

config.SetEntitySetAccessRule("*", EntitySetRights.All);

Я использую встроенную безопасность в IIS. Когда я делаю POST с помощью jQuery, он возвращает код ошибки 500. Я могу вставлять строки в локальную базу данных в своей среде разработки.

Спасибо


person user934024    schedule 08.09.2011    source источник
comment
Попробуйте включить подробные сообщения об ошибках на сервере (blogs.msdn.com/b/phaniraj/archive/2008/06/18/), а затем обновите вопрос, указав сообщение об ошибке, полученное от сервера.   -  person Vitek Karas MSFT    schedule 08.09.2011
comment
Согласен. Если вы можете предоставить дополнительную информацию об ошибке, которую вы видите, мы можем помочь. Сейчас я не думаю, что вы предоставили достаточно информации об ошибке.   -  person David Hoerster    schedule 08.09.2011


Ответы (1)


Я понял. я получал ошибку

«Невозможно обновить EntitySet, поскольку он имеет DefiningQuery и в элементе не существует > элемента для поддержки текущей > операции».

Это было вызвано тем, что таблица, хотя и имела поле идентификатора, не указывала его как первичный ключ. Установите первичный ключ и все в порядке.

Помогло исправление System.Data.UpdateException — DefiningQuery и отсутствие ошибок.

Спасибо

person user934024    schedule 09.09.2011