Предварительно созданный вид Entity Framework на сборке

Я только начал использовать EF 6 и заметил, что первое выполнение занимает больше времени, потому что его нужно скомпилировать, поэтому я исследовал и обнаружил, что вы можете предварительно сгенерировать представление.

Я использовал EF Power Tool для создания представления: http://visualstudiogallery.msdn.microsoft.com/72a60b14-1581-4b9b-89f2-846072eff19d/

Это dll, и я строю, используя опцию Embed in Output Assembly.

Проблема в том, что, хотя у меня есть view.cs, когда я выполняю первый запрос, у меня та же задержка, поэтому кажется, что моя библиотека не использует предварительно сгенерированное представление.

Что может быть не так? Я передаю соединение с сущностью, используя EntityConnectionStringBuilder, возвращая объект EntityConnection.

Также я попытался изменить view.cs на Embedded Resource, так как с Compile у меня не было никаких изменений, в обоих случаях у меня все еще есть первая задержка.

Я уверен, что что-то упустил, но не уверен, что.

Заранее спасибо, Лукас.

1 ответ

Представления EF5 не будут работать с EF6 (кроме того, существуют некоторые проблемы с EF6 Beta 1 и EF6 RC1, которые не позволяют использовать представления с EF6 - эти проблемы должны быть исправлены в EF6 RTM). Я создал шаблон T4 для генерации представлений для EF6 - вы можете найти более подробную информацию здесь - опять же, из-за проблем выше представлений, сгенерированных шаблоном, не будет работать для EF6 RC1. Если вы абсолютно уверены, что вам это нужно, вы можете попробовать версию с моего github - она ​​была обновлена ​​для работы с EF6 RTM, а также для ночных сборок. В любом случае, я почти уверен, что это не генерация представлений, которая вызывает проблемы (фактически производительность генерации представлений в EF6 была значительно улучшена). Недавно мы обнаружили несколько проблем с производительностью (см. 1674 и 1662), которые влияют на время запуска, и мы смотрим на них.

РЕДАКТИРОВАТЬ

Версия шаблона, которая работает с EF6 RTM (6.0.0.0, 6.0.1.0), была опубликована в галерее VS

Другие вопросы по тегам