2012-02-07 16 views
5

これが正常かどうかわかりませんが、ChildActionOnlyメソッドはルートを要求する必要がありますか? は例ASP MVC ChildActionOnlyにルーティングがあります

[ChildActionOnly] 
     public PartialViewResult List(string countryCode, string cityName) 
     {... 
      return PartialView(model); 
     } 

のために私はそれが好きなレンダリング:

私は上のラインに乗るデバッグで
@{Html.RenderAction("List", "MyController", new { area = "MyArea", countryCode = ViewBag.CountryCode, cityName = ViewBag.CityName });} 

:ルートテーブルに

Noルートは、指定された値と一致しました。

UPDATE

context.MapRoute("name", 
       "", 
       new { area = "MyArea", controller = "MyControlelr", action = "List", countryCode = UrlParameter.Optional, cityName = UrlParameter.Optional }); 

答えて

5

はいそれはありません。

すべて[ChildActionOnly]は、URL(例:通常のHTTP GET)ではアクセスできず、Html.ActionまたはHtml.RenderActionで実行する必要があります。これは新しいHTTPリクエストではありませんが、MVCリクエストパイプライン(ルート値を使用したコントローラ/アクション選択)をそのまま通過します。

+0

ありがとうございました。ちょっと私は質問を更新し、ルート値の例を追加しました。この2つのオプションのパラメータが有効であると私に教えてください。 – 1110

+0

@ 1110 - そうです。値は単純に 'string.Empty'に設定されます。値は設定されません。 – RPM1984

関連する問題