ASP.Net MVC RouteData и массивы

Если у меня есть действие, подобное этому:

public ActionResult DoStuff(List<string> stuff)
{
   ...
   ViewData["stuff"] = stuff;
   ...
   return View();
}

Я могу поразить это следующим URL:

http://mymvcapp.com/controller/DoStuff?stuff=hello&stuff=world&stuff=foo&stuff=bar

Но в моей ViewPage у меня есть этот код:

<%= Html.ActionLink("click here", "DoMoreStuff", "MoreStuffController", new { stuff = ViewData["stuff"] }, null) %>

К сожалению, MVC не достаточно умен, чтобы признать, что действие принимает массив, и развертывает список, чтобы сформировать правильный URL-маршрут. вместо этого он просто выполняет .ToString () для объекта, который просто перечисляет тип данных в случае List.

Есть ли способ получить Html.ActionLink для генерации правильного URL, когда один из параметров целевого действия является массивом или списком?

-- редактировать --

Как указал Джош ниже, ViewData ["stuff"] - это просто объект. Я попытался упростить проблему, но вместо этого вызвал не связанную ошибку! Я на самом деле использую выделенную ViewPage <T>, поэтому у меня есть тесно связанная с типом модель. ActionLink на самом деле выглядит так:

<%= Html.ActionLink("click here", "DoMoreStuff", "MoreStuffController", new { stuff = ViewData.Model.Stuff }, null) %>

Где ViewData.Model.Stuff печатается в виде списка

Ответы на вопрос(6)

Ваш ответ на вопрос