私のページが最初にロードされるとき、URLはhttp://localhost:1245/のようになります。しかし、私はこのように見えます:http://localhost:1245/Home/Index/2/2012?Events=Show(/ 2/2012?Events = Showは重要な部分です)。最初から2番目のURLをロードするにはどうすればよいですか?ルーティングデータやクエリ文字データでページを開始するにはどうすればよいですか?
答えて
私はそれのようなものに見えるように、デフォルトMVCのルートの前に新しいルートを追加しているだろう。
routes.MapRoute(
"NewDefault", // Route name
"{controller}/{action}/{month}/{year}", // URL with parameters
new { controller = "Events",
action = "Shows",
month = DateTime.Now.Month,
year = DateTime.Now.Year } // Parameter defaults
);
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home",
action = "Index",
id = UrlParameter.Optional } // Parameter defaults
);
を
デフォルトのURL(ユーザーには表示されません)は/Events/Shows/4/2012
(日付が4/19/2012
の場合)です。デフォルトのコントローラーはEventsController
で、デフォルトのアクションはEventsController.Shows
になります。
public EventsController
{
public ActionResult Shows(int month, int year)
{
someModel model = new someModel();
someModel.month = month;
someModel.year = year;
this.View(someModel);
}
}
そうですか。クエストリングの部分はどうですか? – dotnetN00b
クエリ文字列をコントローラ/アクションに変換しました。 –
追加:あなたのルーティングに
routes.MapRoute("MyRouteName",
"Home/Index/2/2012", new { controller = "Home", action = "Index" });
。
変更にHomeControllerのIndexアクションは、次のシグネチャを持っている:
public ActionResult Index(string Events)....
とにかく/ 2/2012はハードコーディングできませんが、コントローラで決定できますか? – dotnetN00b
URLが標準のcontroller \ action \ idの規則に従っていない限り、そこにあなたのルートがある場合を除いて、あなたはコントローラにアクセスしません。 Ahhh。 – Maess
- 1. 参考文献の開始前に改ページを避けるにはどうすればよいですか?
- 2. MDIでマウスイベントを開始するにはどうすればよいですか?
- 3. Windowsでサブプロセスを開始するにはどうすればよいですか?
- 4. iOS:バッファや文字列から空文字を削除するにはどうすればよいですか?
- 5. 継続タスクインスタンスを開始するにはどうすればよいですか?
- 6. ブルートゥースペアリングのプロセスを開始するにはどうすればよいですか?
- 7. Javaプログラミングを開始するにはどうすればよいですか?
- 8. アクティビティを開始するにはどうすればよいですか?
- 9. Hadoopのマップを開始するにはどうすればよいですか?
- 10. TWikiのページについてのディスカッションを開始するにはどうすればよいですか?
- 11. ASC3(ActionScript 3)フレームの開始時にリスニングを開始するにはどうすればよいですか?
- 12. H2クエリに対してNamedParameterJdbcTemplateを開始するにはどうすればよいですか?
- 13. Perlを使用してWebページのスクレイピングを開始するにはどうすればよいですか?
- 14. 「@」や「。」などの文字を含めるにはどうすればよいですか? MySQLのテーブルで?
- 15. サブフォームのデータシートモードでクエリを開くにはどうすればよいですか?
- 16. MySQLクエリ(://、<、=、など)に他のテキスト/文字を追加するにはどうすればよいですか?
- 17. カラーピケットダイアログを開始するにはどうすればいいですか?
- 18. ラテックス文書の同じページに要約や紹介をするにはどうすればよいですか?
- 19. AWS API Gateway:マッピングテンプレートでクエリ文字列パラメータをオプションにするにはどうすればよいですか?
- 20. Silverlightでビューモデルのプロパティにクエリ文字列をバインドするにはどうすればよいですか?
- 21. 文字列として表されるIPアドレスを増やすにはどうすればよいですか?
- 22. このクエリをORMLite querybuilderで数字を始めるにはどうすればいいですか?
- 23. Symfony2でクエリ文字列を使用してURLをルーティングするにはどうすればよいですか?
- 24. 「電話サービス」(電話バンキングなど)の開発を開始するにはどうすればよいですか?
- 25. クエリ文字列に基づいてコンテンツを変更するにはどうすればよいですか?
- 26. JSPからURLにクエリ文字列を追加するにはどうすればよいですか?
- 27. UBUNTU 9.04でCUDA開発を開始するにはどうすればよいですか?
- 28. AndroidでSkypeアプリケーション開発を開始するにはどうすればよいですか?
- 29. 接続文字列はどうすればよいですか?
- 30. asp.net mvcでクエリ文字列パラメータにアクセスするにはどうすればよいですか?
デバッグのためにその方法を開始したいのですか、またはそのURLに移動するためにウェブサイトを訪れる人がいたらいいですか? –
生産用のデバッグはありません。定期的なユーザーにそのURLにアクセスしてもらいたい – dotnetN00b
ああ、あなたが何を求めているのか分かります。私はそれらのURLフォーマットに必ずしもその値ではないURLに行くようにします。カレンダーは今日の月と年のデフォルトになります。 – dotnetN00b