2016-09-29 4 views
1

Я использую Visual Studio Express 2013 для Web & разработки веб-APPS (а не сайтов) на .net 4.5.App_Code в локальных сборках IIS и Azure/TFS

I build, test & Просмотр моего сайта на локальном IIS 7.5. Я принимаю Azure - используя App Services. Я строю и выпустить в слот App Services с помощью VSTS Online

У меня есть классы в папке App_Code - файлы помечаются как компилировать Это, кажется, единственный способ, которым я могу установить это работать на локальном IIS (или я что-то отсутствует) и все это работает - все классы доступны

Но мне нужно, чтобы построить и выпустить на VSTS/TFS (с помощью VS исследователь команды нажать) Я использую стандартный билд Azure Web App модуль определения в TFS - Который берет папку App_Code и перемещает ее в папку bin, но не компилирует ее, тем самым разбивая классы при развертывании.

Я попытался переименовать App_Code, но это нарушает местные и до сих пор не компилируется на TFS

Что я без вести - как я могу получить TFS, чтобы скомпилировать мои классы или скопировать папку App_Code в корневой каталог (не идеально но эй это работает)?

+0

Как вы управляете своей папкой APP_Code локально? Вы хотите использовать выполненные классы во время развертывания веб-приложения? Вы строите целое сетевое решение или просто проект .csproj? –

+0

Я создаю папку App_Code в VS, используя Добавить папку ASP.NET, а затем создайте там свои файлы. Затем я строю. Я строю только проект (на самом деле решение в этом случае - всего лишь один проект). Но когда я Commit & Push на VSTS, он перемещает папку App_Code в/bin. Но это не компилируется - поэтому классы мне не доступны –

ответ

0

В TFS файлы DLL будут сгенерированы под папкой bin при создании проекта библиотеки классов. Это правильное явление. Предложите создать пакеты Nuget для управления библиотеками классов. И вы можете добавить задачу «NuGet Installer» в верхней части определения сборки, чтобы восстановить пакеты nuget для вашего решения.

enter image description here

Если вы используете vNext сборки на TFS. Там также был очень подробный учебник Build and Deploy Azure Web Apps using Team Foundation Server/Services vNext Builds для справки.

+0

Я использую именно эту сборку - точно такие же шаги. Моя проблема заключается в том, что независимо от того, где я размещаю файл .cs, он просто не компилируется. Поэтому, если я создаю папку AppCode и размещаю там свои классы .cs или даже если я поместил их в корневой каталог - они не попадают в сборку - или, по крайней мере, сайт прерывается с «xxx not declaration», поэтому я предполагаю они не включаются в dll –

+0

Я также попытался включить отдельный проект ClassLibrary в решение и ссылку, и он снова работает на локальном IIS, но не на Azure после сборки. В старые времена, если я настроил (а не веб-приложение) и включил проект ClassLibrary и ссылался на него, он переместил копию библиотеки ClassLibrary.dll в папку bin проектов - этого не происходит с помощью WebApp –