Почему я не могу использовать функцию "Добавить представление" 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



Кстати: я могу вручную создавать новые представления, и они работают.

636   3  

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

    Ничего не найдено.