SoftRouting
1.0.0
nuget インストール パッケージ ソフトルーティング - バージョン 0.1.2
開発の容易さ
クリアコード
簡単なルート
Controllers フォルダー内の標準 Asp.net MVC アプリケーション コントローラー:
public class HomeController: Controller { public HomeController() { } public ActionResult Index() { return Content("index"); } public ActionResult About() { return Content("about"); } public ActionResult Contacts() { return Content("contacts"); } }
標準の Asp.Net ルーティングを使用したインデックス ページへのルーティング (アクション インデックス):
RouteTable.Routes.MapRoute(null, "", new { controller: "Home", action: "index" });
SoftRouting によるルーティング:
using SoftRouting; //very important ¯_(ツ)_/¯ RouteTable.Routes.InController("Home").MapIndexPage("index"); //action name "index" as default page
Asp.Net ルーティングを使用したアクション "about" && "contacts" へのルーティング
RouteTable.Routes.MapRoute(null, "about", new { controller: "Home", action: "about" }); RouteTable.Routes.MapRoute(null, "contacts", new { controller: "Home", action: "contacts" });
または、自動ルーティングを使用することもできます。
RouteTable.Routes.MapRoute(null, "{action}", new { controller: "Home" });
SoftRouting によるルーティング:
RouteTable.Routes.InController("Home") .Map("about") .Map("contacts");
または、自動ルーティングを使用することもできます
RouteTable.Routes.InController("Home").AutoMap(); //will map to ~/index, ~/about, ~/contacts
URLPrefixによる自動ルーティング
RouteTable.Routes.InController("Home").AutoMap("blogs"); //will map to ~/blogs/about, ~/blogs/contacts
また、マップ内で URL 式を使用することもできます。
RouteTable.Routes.InController("Home") .Map("about", "us/about") .Map("contacts", "us/contacts");
そして、ルートにプレフィックスを使用できます。
RouteTable.Routes.InController("Main").AutoMap("us");
エリア内にルートを作成できます
RouteTable.Routes.InArea("Main").WithController("Home") .Map("about", "us/about") .Map("contacts", "us/contacts");
コントローラーとエリアを切り替え可能
RouteTable.Routes.InController("Home").AutoMap("us").SwitchArea("accounts").WithController("Login").AutoMap(); RouteTable.Routes.InController("Home").AutoMap("us").SwitchController("Login").AutoMap();
AreaRegistration クラスのルーティング
using SoftRouting; ¯_(ツ)_/¯ public class MainAreaRegistration : AreaRegistration { public override string AreaName => "Main"; public override void RegisterArea(AreaRegistrationContext context) { context.WithController("Home") .AutoMap(); } }
コントローラーを切り替えられる
context.WithController("Home") .AutoMap() .SwitchController("Info") .AutoMap("info");
エリアを切り替えることもできます
.AutoMap()
.SwithArea("Account")
.WithController("Login")
.AutoMap("accounts"); //~/accounts/login, ~/accounts/register etc...
インストールしていただきありがとうございます!