Просматривая какой-то старый код, я столкнулся со странной ошибкой в пространстве имен.
Допустим, у меня есть два проекта, HelperProject и WebProject. Полное пространство имен каждого - как указано в свойствах приложения - это myEmployer.HelperProject и myEmployer.Web.WebProject.
Страницы в веб-проекте полны операторов, которые используют классы из вспомогательного проекта. Нет операторов import / using, но в корзину добавлена ссылка на вспомогательный проект. Несколько примеров строк могут быть:
myEmployer.HelperProject.StringHelper.GetFixedLengthText(Text, "", Me.Width, 11)
myEmploter.HelperProject.Utils.StringHelper.EstimatePixelLength(Text, 11)
Однако каждая строка, написанная таким образом, выдает ошибку «HelperProject», не является членом «myEmployer». Если вы объявляете такие заявления:
HelperProject.StringHelper.GetFixedLengthText(Text, "", Me.Width, 11)
HelperProject.Utils.StringHelper.EstimatePixelLength(Text, 11)
Все вроде нормально.
В обозревателе объектов решения и в папке bin появляется HelperProject с его полным пространством имен myEmployer.HelperProject.
Я не хочу менять все утверждения, и, кроме того, я подозреваю, что это маскирует более фундаментальную проблему. Но я понятия не имею, что происходит. Кто-нибудь может предложить какие-нибудь указатели, пожалуйста?
Ура,
Matt