Я предварительно генерирую представления для проекта класса с edmx Entity Framework 4, который используется приложением asp.net.
Ресурсы, которые я использовал в качестве ссылки:
http://blog.willbeattie.net/2010/04/pre-generating-views-in-entity.html и http://msdn.microsoft.com/en-us/library/bb896240.aspx
Проблема, с которой я столкнулся, связана с управлением исходным кодом, а также поднимает еще один вопрос о внедрении файлов csdl / msl / ssdl в сборку.Приведенные выше статьи диктуют необходимость встраивания вышеупомянутых ресурсов в сборку путем включения их в проект и установки файлов для встраивания.
Но это заставляет меня задуматься, поскольку эти файлы создаются при сборке ипосле копирования, не будет ли сборка всегда содержать последнюю версию файлов csdl / msl / ssdl?Поскольку эти файлы создаются при сборке и помечаются в проекте для встраивания, может показаться, что файлы, встроенные в сборку, являются файлами, ранее созданными в предыдущей сборке.
Суть моей проблемы касается контроля версий.Если я включаю файлы csdl / msl / ssdl в систему управления версиями каждый раз, когда проект закрывается, он не будет собираться, поскольку эти файлы будут помечены как доступные только для чтения, а Visual Studio выдаст ошибку, когда процесс после сборки попытается скопировать вновь сгенерированныйфайлы над файлами, выведенными из системы контроля версий, которые помечены как доступные только для чтения.В связи с тем, что эти файлы необходимы для сборки проекта, но не генерируются до тех пор, пока проект не будет собран, в настоящее время я не вижу, как я могу успешно не проверять файлы csdl / msl / ssdl в управлении исходным кодом, сохраняя только ссылку на нихв файле проекта есть.Это работает для файла Views.cs, который создается при предварительной сборке, но не для файлов csdl / msl / ssdl, которые копируются при посткомпиляции.