Я принимаю сторону "нет" по точно причине рефакторинга, которую Вы процитировали.
класс А нужно назвать в честь того, что он логически представляет, и только Класс объекта действительно действительно Основа. Метафизика ftw :)
<час>ре: Опция B, нет ничего путающего приблизительно
namespace MySpecificNamespace
{
MyClass: MyCommonNamespace.MyClass
{
}
}
Я следил за этой статьей: Как: использовать маршрутизацию с веб-формами
До того, как я ее обнаружил, у меня были проблемы на моем общем хосте, а не локально. Это был мой файл web.config.
Мой хост использовал IIS 7 с интегрированным конвейером, мне не хватало этого:
<handlers>
<!---after all the others--->
<add name="UrlRoutingHandler" preCondition="integratedMode" verb="*"
path="UrlRouting.axd"
type="System.Web.HttpForbiddenHandler,
System.Web, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</handlers>
РЕДАКТИРОВАТЬ: В соответствии с вашими настройками и кодом, единственное, что осталось проверить, есть ли у вас DLL маршрутизации, определенная в web.config, а также развернутая в вашем каталоге bin:
<add assembly="System.Web.Routing, Version=3.5.0.0,
Culture=neutral,
PublicKeyToken=31BF3856AD364E35"/>
Просто чтобы сообщить, что в конечном итоге я решил... на IIS7 изменил режим конвейера на Integrated и добавил несколько строк в web.config по ссылке выше... http://msdn.microsoft.com/en-us/library/cc668202.aspx
удачи.