1

私はMVC3とかみそりを使用してブログエンジンを構築しています。このシナリオでは、ユーザーが複数のブログを持つことができるようなオプションを提供しました(blogger.comと同様)

ここで、ユーザー「yasser」が次の3つのブログを持っているとします。

  • TechStory
  • ゲームギーク
  • MeMyStory

したがって、他のすべてのユーザーが次のURLでこれらのブログにアクセスできるようにします

  • www.domainName.com/blogs/TechStory
  • www.domainName.com/blogs/GameGeek
  • www.domainName.com/blogs/MeMyStory

そして、より多くのブログを追加することができるので、将来、より多くのそのようなURLがアクセスされるでしょう。

ルーティングで何かを行う必要があることは知っていますが、MVCを初めて使用することでうまくいかないようです。誰かがこれについて私を案内してくれませんか。

4

1 に答える 1

3

このルートをデフォルトのルートの上に追加します。

routes.MapRoute(
    "Blog",
    "Blogs/{blogName}",
    new { controller = "Blogs", action = "Index" }
);

コントローラーは次のようになります。

public class BlogsController : Controller
{
    public ActionResult Index(string blogName)
    {
        BlogModel model = // find blog by blog name
        return View(model);
    }
}

また、1 つの提案: コントローラー名を単数形にしてください: BlogsController ではなく、BlogController です。変更する場合は、それに応じて URL とルーティングを変更してください。

于 2012-07-25T05:42:51.127 に答える