0

クライアント テンプレートで Kendo UI グリッドを使用する asp.net MVC Web アプリがあります。クライアント テンプレートは、次のように href を指定します。

.ClientTemplate("<a href='[controller]/[action]/[parameters]' />")

デバッグ実行では、リンクは次のように正しく生成されます。

http://localhost:[port]/[Controller]/[Action]?[parameters]

美しく動作します。

ただし、展開された環境では、生成されるリンクは次のようになります。

http://[server]/[Controller]/[Action]?[parameters]

Web サイト名がないため、失敗します。したがって、次のようにリンクを生成する必要があります。

http://[server]/[WebSite]/[Controller]/[Action]?[parameters]

これを機能させるには、どのように href リンクを指定する必要がありますか?

4

1 に答える 1

3

仮想ディレクトリを URL に含める処理を行うUrlHelperを使用する代わりに、URL を手動でコーディングしないでください。

.ClientTemplates(string.Format("<a href='{0}' />", 
                     Url.Action("action", "contoller", new { param1, param2})))

クライアント テンプレートの値を URL で使用する場合は、URL を動的に作成する必要があります。これは、Kendo UI テンプレートの構文がルート値内にないためです。

columns.Bound(m => m.Id)
       .ClientTemplate(string.Format("<a href='{0}&Id=#= Id #'>Click me<a>", 
           Url.Action("action", "contoller", new { someNotTemplatedParam })));
于 2012-10-19T12:23:33.400 に答える