値を保持する RouteValueDictionary を作成してみてください。各エントリに異なるキーを与える必要があります。
<% var rv = new RouteValueDictionary();
var strings = GetStringArray();
for (int i = 0; i < strings.Length; ++i)
{
rv["str[" + i + "]"] = strings[i];
}
%>
<%= Html.ActionLink( "Link", "Action", "Controller", rv, null ) %>
のようなリンクが表示されます
<a href='/Controller/Action?str=val0&str=val1&...'>Link</a>
編集: MVC2 は ValueProvider インターフェイスを変更して、元の回答を廃止しました。プロパティとして文字列の配列を持つモデルを使用する必要があります。
public class Model
{
public string Str[] { get; set; }
}
次に、モデル バインダーは、URL で渡した値をモデルに取り込みます。
public ActionResult Action( Model model )
{
var str0 = model.Str[0];
}