Метод DeleteObject отсутствует в Entity Framework 4.1

Это сводит меня с ума. Я получаю сообщение об ошибке

объект не содержит определения для DeleteObject.

Вот моя строка кода, которая выдает ошибку:

ctx.Tanks.DeleteObject(Tank);

Я попытался сослаться на другой объект из другого файла edmx, созданного моим другом, и тогда все в порядке, DeleteObject существует. Я не думаю, что пропускаю какие-либо ссылки в моем проекте.

И сам проект содержит файл edmx, и я использовал DBContext для создания POCO.

Любые идеи?


person bobetko    schedule 13.02.2012    source источник
comment
Вы оба используете одну и ту же версию Entity Framework с одними и теми же шаблонами?   -  person Chriseyre2000    schedule 14.02.2012


Ответы (2)


API DbContext определяет DbSet, а не ObjectSet. DbSet имеет Remove метод, а не DeleteObject метод. Сначала вам нужно решить, какой API вы собираетесь использовать. Если это ObjectContext или DbContext.

person Eranga    schedule 13.02.2012
comment
Спасибо. Я понял это вчера. - person bobetko; 14.02.2012
comment
Итак, с DBContext нет способа удалить родителя и всех дочерних элементов, связанных, как это делает DeleteObject в Objectcontext? - person DavieDave; 01.10.2012
comment
@DavieDave Вы можете с DbSet. Если вы настроили каскадное удаление для дочерней таблицы, она будет удалена автоматически. - person Eranga; 01.10.2012

person    schedule
comment
На этот пост уже был принятый ответ. Если вы хотите внести свой вклад, пожалуйста, дополните свой ответ дополнительными подробностями и контекстом. - person CubeJockey; 01.05.2015