Почему я не могу использовать функцию "Добавить представление" VS2010 в моем приложении MVC?
Это странно,
У меня есть решение с двумя проектами в нем...
Генезис.Домен - это библиотека классов, в которой имеется репозиторий.
Genesis_0_02 - имеет фактические контроллеры MVC, представления и т. д... и это стартап-проект
Я нахожусь в процессе модификации репозитория и проекта mvc. Мне удалось добавить несколько видов, но затем автоматическая генерация вида (правый клик + "добавить вид") перестала работать.
Ошибка диалоговое окно выскочило с ошибкой и трассировкой стека. Я не могу скопировать-вставить его, но в основном он сказал:
C:pathtoCodeTemplatesAddViewEmpty.tt(-1,-1): error : An exception was thrown
while running the transformation code. The process cannot continue. The following
exception was thrown:
System.IO.FileNotFoundException: Could not load file or assembly 'Genesis.Domain,
Version=1.0.0.0, Culture Neutral, etc.etc.' or one of its dependencies. The system
cannot find the file specified.
File name: 'Genesis.Domain, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null'
Далее следует stacktrace, который я не могу скопировать вставить.
Чем это может быть вызвано? Происхождение.На домен ссылаются и ссылались на протяжении всей разработки. Проект / решение компилируется нормально и работает нормально.
Я могу создавать представления, используя модели / классы из пространства имен Genesis_0_02. Но не из Книги Бытия.Доменное пространство имен. (Даже если бытие.Домен классы действительно отображаются в списке.)
Кроме того, в списке классов "добавить представление" появились необычные классы. они выглядят так:
Genesis_0_02.Controllers.AdminMemberController+<>c__DisplayClass8+<>c__DisplayClasse>
Я понятия не имею, откуда они берутся.
Что может быть причиной этого? Как заставить функцию" Добавить представление " снова работать?
Edit
Кстати: я могу вручную создавать новые представления, и они работают.
3 ответов:
Такое поведение очень странно. Я видел weirdnes для VS2008.
Попробуйте пару вещей, как показано ниже
1] Создайте новый веб-проект MVC и добавьте ссылку на - Genesis.Домен. и посмотрите, работает ли на нем Add View from controller.
Если да, то проверьте конфигурацию ниже в web.конфигурационный файл (который находится в папке Views) в вашем рабочем проекте-в частности
PageParserFiltertype
<pages validateRequest="false" pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" pageBaseType="System.Web.Mvc.ViewPage, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" userControlBaseType="System.Web.Mvc.ViewUserControl, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"> <controls> <add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" namespace="System.Web.Mvc" tagPrefix="mvc" /> </controls> </pages>Если Нет Затем попробуйте переустановить фреймворк и VS2010 MVC 2/3 на dev машине.
Также вы можете использовать ссылку ниже http://bradwilson.typepad.com/blog/2010/03/diagnosing-aspnet-mvc-problems.html
Удачи!
У меня была такая же проблема. Коллега по работе решил проблему, отладив процесс шаблона. Он обнаружил, что VS2010 всегда ищет dll в локальной папке, в нашем случае это было:
"C:\Program файлы (x86)\Microsoft Visual Studio 10.0\Common7\IDE\"
Как только мы создали папку в этом месте, мы поместили Dll и ее зависимости в эту папку, и ошибка исчезла.
Он думает, что это определенная ошибка в VS2010.
Мы должны были добавить папку в приведенном выше пути, который соответствует имени указанной библиотеки Dll.
Похоже, что ссылка на проект библиотеки классов была каким-то образом испорчена. Вы пробовали удалить проект библиотеки классов из вашего решения, а затем повторно добавить проект в решение?
Я сам никогда не сталкивался с этой проблемой, но это единственное, что приходит на ум из этих сообщений об ошибках.
Comments