VS2010 отказывается компилировать пространство имен, говорит, что его не существует - PullRequest
4 голосов
/ 24 января 2011

Я перенес свой проект на другой компьютер с Win XP на Win 7. После установки я понял, что что-то в моей папке App_code, называемое mydata.web.utils, имеет класс, называемый WebConstants (который является публичным классом и публичные функции).

теперь в таких областях, как global.asax, он говорит мне, что «WebConstants не существует в этом контексте»

Даже если у меня есть:

<%@ Import Namespace="mydata.web.utils" %>

И webconstants.cs имеет:

namespace mydata.web.utils
{
  public class WebConstants
  {
   public static String APPLICATION_VERSION = "version";
  ........
  }
}

Нет синтаксических ошибок или ошибок компилятора в webconstants.cs

Но везде, где говорится, «что такое« паутина »» ??

Если я переименую пространство имен из "web.utils" в просто "сеть", проблема все та же. Если я переименую "web.utils" в "wez" - ошибки компилятора исчезнут.

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

Я также заметил в «выводе сборки», что в проекте нет компилируемого кода приложения. Может быть, потому что это папка ASP.net, я не уверен. Это нормально?

Как получается, что один и тот же исходный код, та же Visual Studio, выдает ошибки в win7 и никаких ошибок в компьютере winXP?

Ответы [ 4 ]

6 голосов
/ 24 января 2011

Щелкните правой кнопкой мыши файл webcontants.cs и перейдите в Свойства.Убедитесь, что для параметра «Build Action» установлено значение «Compile».Для него может быть установлено значение «Контент», и в этом случае VS его не получит.

3 голосов
/ 24 января 2011

Если у вас есть это пространство имен в другом проекте, убедитесь, что вы также добавляете ссылку на веб-проект.

Также убедитесь, что проект, из которого происходит пространство имен «mydata.web.utils», создается правильно.

Вы также можете изменить уровень детализации в окне «Вывод» в Visual Studio после сбоя сборки: (Инструменты-> Параметры-> Проект и решения-> Построить и запустить, выбрав «Нормальный», по порядку. чтобы увидеть больше деталей). Подробнее об этом можно узнать из моего блога: Ошибка «ILMerge.Merge: целевая сборка« blabla.blabla »отображается как внешняя ссылка» при создании проекта установки

1 голос
/ 24 января 2011

Вы пытались построить проект? Проверяли ли вы, что в вашем проекте после загрузки отсутствовали ссылки на DLL?

1 голос
/ 24 января 2011

Хорошо, прочитав ваши комментарии в другом ответе ниже, я понял, что происходит ...

Пожалуйста, посмотрите эту ссылку: Не удалось найти пространство имен или класс (ASP.NET WebSite "project")

Вам необходимо преобразовать текущий проект asp.net веб-сайт в веб-приложение .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...