というビューBrowse.chtml
があり、ユーザーは検索語を入力するか、検索語を空白のままにできます。検索語を入力するときはページをhttp://localhost:62019/Gallery/Browse/{Searchterm}
にリダイレクトし、何も入力されていないときはブラウザを にリダイレクトしたいhttp://localhost:62019/Gallery/Browse/Start/Here
。
これを試すと、次のエラーが表示されます。
コントローラー タイプ 'GalleryController' でのアクション 'Browse' の現在の要求は、次のアクション メソッド間であいまいです: System.Web.Mvc.ActionResult Browse(System.String) on type AutoApp_MVC.Controllers.GalleryController System.Web.Mvc.ActionResult Browse (Int32、System.String) タイプ AutoApp_MVC.Controllers.GalleryController
私がMVCでやっていることはすべて初めてです。この時点で他に何を試すべきかわかりません。
public ActionResult Browse(string id)
{
var summaries = /* search using id as search term */
return View(summaries);
}
public ActionResult Browse(string name1, string name2)
{
var summaries = /* default list when nothing entered */
return View(summaries);
}
これも Global.asax.cs にあります。
routes.MapRoute(
"StartBrowse",
"Gallery/Browse/{s1}/{s2}",
new
{
controller = "Gallery",
action = "Browse",
s1 = UrlParameter.Optional,
s2 = UrlParameter.Optional
});
routes.MapRoute(
"ActualBrowse",
"Gallery/Browse/{searchterm}",
new
{
controller = "Gallery",
action = "Browse",
searchterm=UrlParameter.Optional
});