У меня есть проект веб-приложения на C # ASP.NET, где все страницы находятся в глобальном / default / пространстве верхнего уровня. (У меня нет явных объявлений пространства имен. И когда я смотрю на DLL моего скомпилированного веб-приложения в .NET Reflector от Red Gate, я могу убедиться, что все классы находятся в пространстве имен .NET верхнего уровня.) Есть ли какой-нибудь хороший, автоматизированный способ переместить все страницы и пользовательские элементы управления в новое пространство имен, скажем «MyWebApplication»? В идеале было бы неплохо сделать это только с Visual Studio, но я был бы открыт для рассмотрения коммерческого инструмента рефакторинга в случае необходимости.
Я подумал, может быть, установив свойство «Пространство имен по умолчанию» в свойствах приложения проекта, я мог бы заставить компилятор неявно помещать все страницы в указанное пространство имен, но, похоже, это не так; этот параметр «Пространство имен по умолчанию», по-видимому, позволяет Visual Studio вставлять явные объявления пространства имен в новые страницы, а не косвенно влиять на пространство имен любых существующих страниц.
Если это имеет значение, моя непосредственная мотивация заключается в том, чтобы попытаться запустить инструмент статического анализа (CAT.NET) в моем веб-приложении; инструмент, кажется, имеет причуду или два с кодом в глобальном пространстве имен.