Что означает "Веб-сайты не дают вам никакого контроля над пространствами имен"?
Как вы понимаете проблему пространства имен "Нет контроля над вашими пространствами имен", цитируемую из
http://reddnet.net/code/asp-net-web-site-vs-web-application-project-part-2/
Вот больше предыстории:
Один из недостатков проекта веб-сайта VSTS 2005 заключается в том, что моя путаница заключается в том, что именно означает "отсутствие контроля над вашим пространством имен"?
- Нет контроля над вашими пространствами имен. Конечно, вы можете вручную добавлять пространства имен практически ко всему, но Visual Studio будет бороться с вами на каждом этапе пути. Сгенерированный код, такой как ADO.NET DataSets и т. Д., Становится очень трудно контролировать. В конце концов вы сдадитесь и просто позволите VS поместить все в пространство имен по умолчанию. В больших приложениях это очень раздражает, особенно если вам нравится хорошо структурированное приложение.
Ценю, если кто-нибудь может показать образец здесь.
2 ответа
Джордж, веб-сайты не являются специфическими для VSTS. Это нормальная особенность Visual Studio, преследующая нас начиная с Visual Studio 2005.
Также см. https://stackru.com/questions/237664/web-site-vs-asp-net-web-application-in-visual-studio.
Просто проверьте это: создайте веб-приложение и веб-сайт, а затем посмотрите на пространства имен, созданные в Default.aspx.cs:
- Сайт: не имеет пространства имен
- WebApplication: имеет пространство имен
Когда у вас очень большое приложение, невозможно найти ваши классы без пространств имен.
Теперь создайте DataSet:
- WebSite: не создано.Designer.cs -> пространство имен будет создано автоматически на лету
- WebApplication: .Desinger.cs создан с правильным пространством имен.