2011-08-07 9 views
0

最新のバージョンTelerik MVCASP.NET MVC 3Razorビューエンジンで使用しています。Telerik MVCテンプレート列内に独自のアクションルータを指定しています

私は、次の列の宣言があります。

column.Bound(x => x.Id) 
    .Template(x => Html.ActionLink("Edit", "Edit", new { id = x.Id })) 
    .Title("Action") 
    .Width(100); 

を私が使用したいが、どのようにわからないだろう、この編集アクションメソッドにそのルートを自分自身のメソッドを作成していますか?

public static object AdministrationCategoryEdit(this UrlHelper urlHelper, int categoryId) 
{ 
    Check.Argument.IsNotNull(urlHelper, "urlHelper"); 

    return new { area = "Administration", controller = "Category", action = "Edit", id = categoryId }; 
} 

私の列宣言で上記のメソッドを参照し、カテゴリIDに渡す方法はありますか?例えば、私はボタンでそれを使用したい場合は、その後、私のようなものだろう

を:すべてのActionLinkメソッドは、アクション用に別のパラメータを持っているので

$('#btnEdit').click(function() { 
    window.location = '@Url.RouteUrl(Url.AdministrationCategoryEdit(Model.Id))'; 
}); 

答えて

0

をあなたの条件のための完璧な一致はありません。ただし、アクションが現在2回指定されていても、次のコードで動作するはずです。

column.Bound(x => x.Id) 
    .Template(x => Html.ActionLink("Edit", "Edit", Url.AdministrationCategoryEdit(x.Id))) 
    .Title("Action") 
    .Width(100); 

代替は現在、唯一のルートパラメータが、リンクの完全なコードを生成ActionLinkに似たHTMLヘルパーを作成することです。

+0

ありがとうございました。私はヘルパーメソッドを作成するのと同じように考えました。 –

関連する問題