MVC文件夹下默认文档

发布于 2024-10-15 12:38:06 字数 442 浏览 4 评论 0原文

因此,在 IIS 中,您可以将所有站点文件夹的默认文档设置为“index.aspx”。

在 MVC 中,我如何跨 a) 所有目录执行此操作,或者一次失败 b) 一个目录。

我在 [Views]/[Search]/[index.aspx] 中有一个页面

此网址有效 - www.[mysite]/search/index 但我无法让它在 - www.[mysite]/search 下工作

我尝试将其添加到 global.asax >注册路线

        routes.MapRoute(
                "Search",
                "{action}",
                new { controller = "Search", action = "Index" }
        );

So in IIS you can set the default document for all site folders to be say "index.aspx".

In MVC how do I do this across a) all directories or failing that b) one directory at a time.

I have a page in [Views]/[Search]/[index.aspx]

This url works - www.[mysite]/search/index
but I can't get it to work under - www.[mysite]/search

I have tried adding this into global.asax > RegisterRoutes

        routes.MapRoute(
                "Search",
                "{action}",
                new { controller = "Search", action = "Index" }
        );

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

看透却不说透 2024-10-22 12:38:06

MVC 不使用默认文档,而是使用默认路由。

您上面的路线向我们表明,当有人访问您的网站 (http://example.com) 时,默认页面将是 search 目录中包含的 Index 视图。


使用新的 MVC 项目生成的默认路由如下所示

    routes.MapRoute( _
        "Default", _
        "{controller}/{action}/{id}", _
        New With {.controller = "Home", .action = "Index", .id = UrlParameter.Optional} _
    )

这意味着您的路由结构将类似于

MVC doesn't use a default document, but a default route.

Your route above shows us that the default page when someone visits your website (http://example.com) will be the Index view contained within the search directory.


The default route that gets generated with a new MVC project looks like this

    routes.MapRoute( _
        "Default", _
        "{controller}/{action}/{id}", _
        New With {.controller = "Home", .action = "Index", .id = UrlParameter.Optional} _
    )

What this means is that your routing structure would look like

少女情怀诗 2024-10-22 12:38:06

通常你不需要这条路线。默认路由应该可以正常工作,因为它指定了默认控制器和操作,您可以对其进行修改以满足您的要求。因此,如果用户请求 / 这个默认控制器和操作应该被执行。这在 IIS7 上可以开箱即用,但在 II6 上则不起作用,因为默认情况下不能使用无扩展名的 url。您可以查看以下 博客文章(如果您在 IIS6 上运行)。

Normally you don't need this route. The default route should work fine as it specifies a default controller and action which you could modify to match your requirements. Thus if the user requests / this default controller and action should be executed. This would work out of the box on IIS7 but on II6 it won't work because you cannot have extensionless urls by default. You might take a look at the following blog post if you are running on IIS6.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文