Ответ 1
Добавьте значение по умолчанию для activity
:
routes.MapRoute(null,
"Activity/{activityId}/Task/{action}/{id}/{activity}",
new {
controller = "Task",
action = "Edit",
id = "",
activityId = "",
activity = "" });
Помните также, что этот маршрут будет только забирать URL-адреса в форме
/Activity/10/Edit/1/theActivity
а ваш пример
/Activity/10/Edit/1
будет выбран маршрут по умолчанию, установив значения маршрута в
controller = "Activity"
action = "10"
id = "Edit/1"
Phil Haack Отладчик маршрутизации для ASP.NET MVC чрезвычайно полезен для выяснения того, как работать с этими вещами...