Могу ли я получить EnableUpdate и EnableDelete для работы на EF4 LinqDataSource? - PullRequest
0 голосов
/ 09 февраля 2011

Итак, я начал использовать Linq-To-Sql около 2 лет назад, но моя компания подталкивает меня к переходу на Entity Framework v4. Не хочу вдаваться в аргументы L2s против EF, просто предположите, что я не могу переключиться обратно на L2S.

В любом случае, в старом добром L2S я бы определил сетку или список, затем LinqdataSource с EnableUpdate = true, EnableDelete = true и EnableInsert = true. Я бы назначил DataSourceID вида gridview или listview идентификатору linqdatasource и BAM! Мгновенный CRUD.

Однако с EF4 кажется, что этот автоматический CRUD без кода отсутствует. В окне «Дизайн Visual Studio 2010» в окне «Задачи Gridview» НЕ отображается «Включить редактирование» или «Включить удаление». Эти элементы использовались в моих приложениях L2S, и, кроме того, когда я вручную добавляю свойства EnableX = true в свой LinqDataSource, при попытке обновления я получаю сообщение об ошибке: "Контекст данных, используемый LinqDataSource 'lds1', должен расширять DataContext, когда включены операции удаления, вставки или обновления."

Так есть ли способ заставить EF4 подчиняться моим командам EnableUpdate / Delete / Insert в LinqDataSource?

Спасибо!

1 Ответ

0 голосов
/ 09 февраля 2011

Прежде всего LinqDataSource является компонентом для Linq-to-Sql.Вы должны использовать EntityDataSource для работы поверх Entity Framework.Это, вероятно, решит вашу проблему.

...