Фон: Я пытаюсь создать шаблон для ASP.NET MVC с использованием Visual Studio 2013 Ultimate Update 5. Чтобы начать, я создаю веб-приложение из пустого шаблона и включаю ссылки MVC. Затем я добавляю все основные необходимые компоненты для приложения, такие как модель, контроллер и представления. Затем я запускаю его, и он работает. Затем я экспортирую его в качестве шаблона проекта.Как создать собственный шаблон проекта ASP.NET MVC?
В прошлом я успешно создал шаблоны для приложений Web Api и Console с использованием вышеуказанного метода.
Описание проблемы: При попытке использовать шаблон для нового проекта, я получаю следующее сообщение об ошибке:
Согласно как сообщение об ошибке и Microsoft, я должен быть в состоянии решить эту проблему, поместив следующий код в моем файле Web.config:
<system.web>
<compilation debug="true" targetFramework="4.5.1"/>
<httpRuntime targetFramework="4.5.1"/>
</system.web>
Однако, это уже присутствует, а поле диалога сохраняется.
Если я пытаюсь запустить без отладки, я получаю следующее сообщение об ошибке в браузере:
HTTP Error 500.19 - Internal Server Error
The requested page cannot be accessed because the related configuration data for the page is invalid.
Попытки решить:
- Удаляется как Web.config и web.config файлы и импортированные из существующих решений, которые работают.
- Выбрано «Добавить новый файл Web.config с включенной отладкой», , который перезаписывает существующий файл Web.config и web.config. Хотя Visual Studio может перезаписывать Web.config, он не может перезаписать web.config («Операция не может быть выполнена. Не выполнено » появляется в диалоговом окне).
- Добавлен вышеуказанный тег system.web в web.config.
- Ensured that the Asp.Net debugger is enabled in property settings
- Очищенные и удалить вручную существующее .dlls перед запуском
- неустановленных и переустановил ASP.NET MVC с NuGet
Update:
Вместо использование шаблона экспорта в Визуальном Studio, я установил TemplateBuilder and SideWaffle и выполнил связанные видеоинструкции для создания пользовательского шаблона проекта. Тем не менее, я получаю следующее сообщение об ошибке при попытке создать новый проект из шаблона:
Эта ошибка была open issue within github с апреля, так что кажется я не повезло.
Второе обновление: Cause Analysis Root
я определил основную причину того, почему проекты, основанные на экспортируемый шаблон потерпеть неудачу. Сравнивая ссылки на базовых и производных проектов показывает следующее:
Derived:
<Reference Include="System.Web.Razor">
<HintPath>..\..\..\..\..\..\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v2.0\Assemblies\System.Web.Razor.dll</HintPath>
</Reference>
Base:
<Reference Include="System.Web.Razor">
<HintPath>..\packages\Microsoft.AspNet.Razor.3.2.3\lib\net45\System.Web.Razor.dll</HintPath>
</Reference>
После того, как HintPaths в производном проекта сбрасываются на те основания, производный проект выполняется успешно (нет диалогового окна «Отладка не включена»).
Вопрос становится: «Как я могу гарантировать, что HintPaths производного проекта автоматически устанавливаются в соответствующие значения?»
Вы пытались запустить Visual Studio в качестве администратора? У меня были проблемы до очень похожего на это, и это было трюк, но это было не то же самое. –
Просто попробовал. Я все еще получаю диалог. – bwyn