2017-08-16 19 views
-4

私はasp.net mvcのWebプロジェクトに取り組んでいます。 この私のRouteConfigasp.net mvcのURLからコントローラ名を削除するには?

のコードである。これは、URL

localhostです:

55960 /ホーム/ myAction/80102 /アウスウォン・マッチ・バイ・9・ウィケットが、私はしたいですそれは

localhostのよう:55960/myAction/80102 /アウスウォン・マッチ・バイ・9・ウィケット

routes.MapRoute(
        name: "Default", 
        url: "{controller}/{action}/{id}/{Title}", 
        defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional, Title = "" } 
       ); 

私は、このプラットフォーム上で利用できる多くの提案を適用したがworkeしていませんd。 はdomain.comの代わりにdomain.com/?id=1またはdomain.com/list?id=1 のように、

+0

あなたの質問の背景には何がありますか?あなたはコントローラのコードレベルの名前を難読化しようとしていますかIsaack Rasmussenの答えに従ってURLを単純化しようとしていますか? – camelCase

答えて

1

だから、あなたのコントローラがルートになりたい詳細に説明することができる任意のものがあります/ controller/list?id = 1?

あなたは、そのコントローラの

config.MapHttpAttributeRoutes(); 

次に、あなたの設定に

[RoutePrefix("")] 
public class HomeController : Controller 

を追加することができますしかし、これはあなたが多くのコントローラを持っている場合を追跡することが紛らわしいかもしれません。 さらに、routes.MapRoute()をデフォルトのコントローラを指すように設定する方が良いかもしれません。

関連する問題