0

私はasp.net mvc 3に取り組んでいます。私のプロジェクトには、次のような3つの領域があります。

MyProject/Areas/Blogs
MyProject/Areas/Forums
MyProject/Areas/Groups

この 3 つのうち、ブログ ビューはスタートアップ ビューです。そのために、globla.ascxを次のように設定しました

routes.MapRoute(
                "Default", // Route name
                "{controller}/{action}/{id}", // URL with parameters
                new { controller = "Blog", action = "Blog", id = UrlParameter.Optional }
            );

そしてBlogAreaRegistration.csでは、

context.MapRoute(
                "Blogarea_Default",
                "{controller}/{action}/{id}",
                new { controller = "Blog", action = "Blog", id = UrlParameter.Optional }
            );

そして ForumAreaRegistration.cs では、

context.MapRoute(
                null,
                "Forums/{action}/{id}",
                new {controller="Forums", action = "Forum", id = UrlParameter.Optional }
            );

GroupsAreaRegisration.cs では、

   context.MapRoute(
        "Groups_default",
        "Groups/{controller}/{action}/{id}",
        new { controller = "Groups", action = "Group", id = UrlParameter.Optional }
    );

ここでフォーラムとブログは私が望むように機能しますが、グループは機能せず、常に404リソースが見つかりませんページが表示されるため、プロセスで間違いを犯した場合はガイドしてください.

4

2 に答える 2

2

変更してみる

 context.MapRoute(
        "Groups_default",
        "Groups/{controller}/{action}/{id}",
        new { controller = "Groups", action = "Group", id = UrlParameter.Optional }
    );

為に:

 context.MapRoute(
        "Groups_default",
        "Groups/{action}/{id}",
        new { controller = "Groups", action = "Group", id = UrlParameter.Optional }
    );
于 2012-10-25T12:25:58.640 に答える
0

コード ブロックからまたは のいずれGroups/かを削除する必要があります。その後、動作するはずです。を削除するので、コードは次のようになります。{controller}/GroupsAreaRegisration.cs{controller}/

context.MapRoute(
    "Groups_default",
    "Groups/{action}/{id}",
    new { controller = "Groups", action = "Group", id = UrlParameter.Optional }
);

また、そうしないとまったく予期しない結果が生じる可能性があるため、BlogAreaRegistration.csに置き換えます。ここでの完全なコードは次のようになります{controller}Blog

context.MapRoute(
    "Blogarea_Default",
    "Blog/{action}/{id}",
    new { controller = "Blog", action = "Blog", id = UrlParameter.Optional }
);
于 2012-10-25T12:26:34.240 に答える