У меня есть бета-приложение WPF VS11 с Microsoft Datagrid на основе таблицы из модели Entity Framework 5.0b2 (из базы данных сервера SQL). (Сетка использует любой код, который был автоматически сгенерирован путем добавления источника данных из модели структуры сущностей и перетаскивания таблицы из этой модели на поверхность разработки.). Затем я использовал надстройку генератора кода DBContext EF5.0 для генерации типов DbContext, которые я мог бы использовать в приложении.
Результат не был хорошим. Я получил ошибку компиляции, которая кажется нефиксированной; по крайней мере, мои попытки усугубили ситуацию. Сетка данных не любит DbContext и не сосуществует с ним (когда и таблица данных, и DbContext основаны на одной базе данных и таблицах). Есть ли обходной путь, может быть, путем изменения шаблона генератора кода?
Сообщение об ошибке вставляется в конце. Спасибо за любую помощь или понимание этого.
(обратите внимание, что следующий тесно связанный пост не является ответом, потому что, хотя я могу преобразовать dbcontext в objectcontext, я не могу заставить datagrid работать с ним должным образом, и если я преобразую objectcontext в dbcontext, я не ' t имеет автоматически сгенерированные типы dbcontext:
Преобразование DBContext в ObjectContext для использования с GridView ). Я ищу довольно простой обходной путь - я уверен, что есть обходной путь, если я начну вручную кодировать все типы и преобразования, но я хочу сохранить простоту использования автоматически сгенерированного кода - я не хочу быть занятым с работой генератор кода может, и так должен, делать. Если решения не существует, я полагаю, что я буду основывать элементы управления на ado.net и оставлю инфраструктуру сущностей для не-пользовательского кода.
Error
Невозможно неявно преобразовать тип
'System.Data.Entity.DbSet' в
'System.Data.Objects.ObjectQuery'
Документы \ Visual Studio 11 \ Projects \ WpfApplication3 \ WpfApplication3 \ MainWindow.xaml.cs
Строка, вызвавшая ошибку (созданная Microsoft путем перетаскивания сетки данных с таблицей EF в качестве источника):
System.Data.Objects.ObjectQuery myTblsQuery = myDbsEntities.MyTbls;