Настраиваемое пространство имен в веб-приложении .NET - PullRequest
0 голосов
/ 30 мая 2009

Итак, я написал несколько пользовательских классов и поместил их в пространство имен, назвав его «Сфера».

В моем файле aspx.cs codebehind у меня есть "using Sphere;" написано. Я знаю, что это работает, потому что это всегда работало, пока я не скопировал этот проект в новую папку. Кроме того, даже когда я нажимаю «просмотреть в веб-браузере», все работает отлично.

Проще говоря, Visual Studio 08 не распознает пространство имен, поэтому я не могу собрать без ошибок и, следовательно, не могу отладить. Спасибо за помощь!

редактирование: У меня есть пространство имен в папке App_Code в файле .cs

Ответы [ 6 ]

3 голосов
/ 30 мая 2009

Ваши собственные классы находятся в отдельном проекте? Если это так, вам может понадобиться добавить ссылку на этот проект. Если вы скопировали проект в новую папку, путь к вашей DLL-библиотеке Sphere в VS2008 может быть поврежден.

1 голос
/ 30 мая 2009

Я на самом деле только что понял:

В моих файлах .cs было установлено «build action: content», а не «compile». Я щелкнул правой кнопкой мыши + свойства всех моих файлов и изменил действие сборки, и теперь все это работает!

0 голосов
/ 04 марта 2014

Возможно, вы получили эту ошибку:

Не удалось найти тип или имя пространства имен 'CustomClass' (отсутствует директива using или ссылка на сборку?)

Причина, по которой тип не был в сборке, заключается в том, что папка App_Code является специальной папкой для Проекты веб-сайтов . Эти файлы компилируются во время выполнения, когда они развернуты на сервере, а не при сборке проекта. В Project Web Application каждый файл имеет свойство Build Action. По умолчанию файлы классов имеют значение Compile. Но если класс создается в файле App_Code, он получает значение Content. и не компилируется при запуске в качестве приложения.
Конечная папка App_Code не предназначена для использования в веб-приложении. Или, как вы поняли, вы можете вручную изменить действие Build на Compile.

Я нашел ответ, выполнив поиск по следующим ссылкам:

  1. Каскад Вишала Джоши - папка App_Code не работает с проектами веб-приложений (WAP)
  2. Свойство Build Action "установлено в" Содержимое "для файлов классов в папке App_Code
0 голосов
/ 30 мая 2009

Звучит так, как будто вы переместили файлы, ссылки были сломаны. Если сферные классы находятся в отдельной dll, попробуйте удалить и повторно добавить ссылку. Если он находится только в файле .de, убедитесь, что файл в проекте все еще находится в относительном пути.

0 голосов
/ 30 мая 2009

Звучит как пропущенная ссылка.

В вашем новом проекте есть ссылка на проект, который определяет фактическое пространство имен Sphere?

0 голосов
/ 30 мая 2009

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

...