原標題:不能固定配置錯誤路線形式張貼到錯誤的URL
我想使基於過濾器中的搜索(4個候選條件值)和由用戶輸入的標準。
我有以下途徑:
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"SubLineasProductosDefault",
"SubLineasProductos.aspx/Create",
new { controller = "SubLineasProductos", action = "Create" }
);
routes.MapRoute(
"SubLineasProductosSearch",
"SubLineasProductos/Buscar.aspx/{filtro}/{criterio}",
new { controller = "SubLineasProductos", action = "Buscar"}
);
routes.MapRoute(
"SubLineasProductos",
"SubLineasProductos.aspx/{id}",
new { controller = "SubLineasProductos", action = "Index", id = "" }
);
routes.MapRoute(
"Default",
"{controller}.aspx/{action}/{id}",
new { controller = "Home", action = "Index", id = "" }
);
routes.MapRoute("Root", "", new { controller = "Home", action = "Index",
id = "" });
和下面的形式:
<% using (Html.BeginForm("Buscar", "SubLineasProductos",
FormMethod.Get)) { %>
<%= Html.Hidden("filtro", "nombre") %>
<%= Html.TextBox("criterio") %>
<button type="submit" title="Buscar">
<img src='<%= Url.Content("") %>' alt="" />
</button>
<% } %>
的形式不重定向到行動Buscar,但在SubLineasProductos控制器的操作指標。我認爲我的路線錯了,但我不知道如何修正它們。我已閱讀this post,並且儘可能多地看到我的路線中一切正常。
我該如何解決這個問題?提前致謝。
編輯:與菲爾提供的工具,我可以看到,如果我測試一個URL像
http://localhost/MyApp/SubLineasProductos/Buscar.aspx/nombre/block
它,我希望路由匹配。但是,當我運行我的應用程序,並嘗試使用生成的URL之前貼在表格的形式爲:
http://localhost/MyApp/SubLineasProductos.aspx/Buscar?filtro=nombre&criterio=block
我怎樣才能解決這個新的問題?
感謝您的時間,菲爾 – eKek0 2009-07-22 04:32:21