Папка App_Code отсутствует в VS 2010 - PullRequest
39 голосов
/ 17 февраля 2010

Я пытался создать сайт динамических данных с использованием VS 2010 RC. Попытка создать папку App_Code, в которую я бы поместил класс LINQ to SQL, не удалась. Когда я выбрал «Добавить папку ASP.NET», чтобы добавить папку, у меня были возможности создавать только следующие папки:

  • App_GlobalResources
  • App_LocalResources
  • App_Data
  • App_Browsers
  • Тема

Что случилось с папкой App_Code?

Ответы [ 8 ]

34 голосов
/ 17 февраля 2010

Почему бы не создать еще один проект, библиотеку классов и поместить ее туда. На сегодняшний день это лучший способ отделить эти классы от остальной части вашего сайта.

Чтобы ответить на конкретный вопрос о папке App_Code, она доступна в проектах WebSite в виде папки Asp.Net, из которой вы можете выбрать. Но из проекта веб-приложения вы можете просто создать новую папку и назвать ее App_Code, и она будет работать просто отлично. Это как в Visual Studio 2010 RC.

23 голосов
/ 24 апреля 2011

вы не можете / не должны добавлять папку App_Code в веб-приложение, потому что эта папка предназначена для компиляции во время выполнения asp.net, а проект веб-приложения предназначен для предварительной компиляции вашего сайта в dll, которую вы можете найдите в папке Bin и разверните на своем сайте. Если вы добавите это вручную, вы можете столкнуться с конфликтами имен, поскольку класс будет предварительно скомпилирован в dll, а затем asp.net снова попытается перекомпилировать во время выполнения.

Итак, для проектов веб-приложений вы должны вместо этого добавить папку с именем что-то вроде CodeFolder, а затем добавить туда свой класс. Затем щелкните правой кнопкой мыши свойства этого файла класса и установите его конфигурацию сборки для компиляции, а не для содержимого.

Я работаю над своим собственным веб-проектом для www.athenatennis.com.sg и схожу с этим по кривой обучения.

3 голосов
/ 17 июля 2013

Вы можете вручную создать папку App_Code и добавить свой класс внутри. Следует обратить внимание на то, что ... в свойствах файла убедитесь, что для Build Action установлено значение Compile .

2 голосов
/ 08 февраля 2011

Я также нашел это смешным, что он отсутствует. Дело в том, что вам не нужно создавать папку App_Code, вы просто добавляете классы в любую новую папку.

В VS 2005 любой класс вне App_Code выдаст ошибку компиляции.

Итак, я также хочу знать, почему они решили снять это ограничение? Было ли это из-за того, что люди жаловались на это, или концепция проекта изменилась, и это было сочтено необходимым?

1 голос
/ 31 августа 2012

Если вам нужна папка app_code, вы должны создать «Веб-сайт ASP.NET». Сделав это, щелкните правой кнопкой мыши веб-сайт (Solution Explorer) -> Добавить папку ASP.NET-> App_Code.

Если вы просматриваете папку app_code внутри «Веб-приложения ASP.NET», вы теряете время.

0 голосов
/ 14 августа 2013

Очень просто добавить новый класс из «Добавить новый элемент». Visual Studio 2010 автоматически покажет сообщение «Хотите поместить файл в папку App_Code». Просто нажмите «ОК». [Введите описание изображения здесь] [ 1]

0 голосов
/ 01 апреля 2013

если вы создаете класс, он спросит вас, хотите ли вы добавить его в папку с кодом приложения.

0 голосов
/ 18 августа 2011

в VS 2010 вам нужно создать решение, затем щелкнуть правой кнопкой мыши -> добавить новый веб-сайт, затем при добавлении классов, linq2sql и т. Д. Vs создаст папку app_code для вас

...