2010-04-09 35 views
1

我有一個關於MVC路由的問題。.net MVC路由到可選參數的控制器

我有一個控制器方法,調用URL的許多不同組合。爲了解決我使用可選參數的問題。

這裏是我的控制器方法簽名......

public ActionResult localMembersSearch(string Gender, string calling, [Optional]string Region, [Optional]string County, [Optional]string Town, [Optional]string queryvalues) 

前兩個參數是不可選的,但總是期望。

這裏是我的URL路徑..

 routes.MapRoute(
      "memberDataSort", 
      "MemberSearch/UKMembers/{Gender}/{Calling}/options/{*queryvalues}", 
      new { controller = "MemberSearch", action = "localMembersSearch", Gender = "", Calling = "", Region = "", County = "", Town = "", queryvalues = "" } 
     ); 

現在我想的是能夠說,其中{*} queryvalues放置字符串設定爲參數「queryvalues」。

因爲目前發生的事情是控制器被叫做「性別」,「呼叫」和「地區」。

有沒有一種途徑我可以明確說,用{* queryvalues}填充'queryvalues'參數?

因此控制器會收到下面的簽名......

localMembersSearch( 「性別」, 「叫」, 「」, 「」, 「」, 「queryvalues」)

任何幫助是最apreciated;)

Truegilly

回答

0

只是雖然這件事,認識到這一點顯而易見的解決方案......

localMembersSearch("Gender", "Calling", "null", "null", "null", "queryvalues") 

我對相關地區,縣,鎮的數據和控制方法檢查所以這個工程確定

truegilly