禁用删除ASPX扩展

时间:2016-08-08 12:35:37

标签: c# asp.net visual-studio iis

我在Visual Studio中创建了一个C#应用程序,该应用程序托管在IIS 7.5上。直接访问应用程序的ASPX文件会自动删除其扩展名(页面正确呈现)。

例如,访问以下网址时: http://www.example.com/contact.aspx

从服务器返回以下URL: http://www.example.com/contact

我想配置应用程序,以便使用包含扩展名的返回URL来访问带有扩展名的ASPX文件。

web.config中没有<rewrite>标记。

Global.asax内容:

<%@ Application Language="C#" %>
<%@ Import Namespace="WebSite2" %>
<%@ Import Namespace="System.Web.Optimization" %>
<%@ Import Namespace="System.Web.Routing" %>

<script runat="server">

    void Application_Start(object sender, EventArgs e)
    {
        RouteConfig.RegisterRoutes(RouteTable.Routes);
        BundleConfig.RegisterBundles(BundleTable.Bundles);
    }

</script>

RouteConfig.cs内容:

using System;
using System.Collections.Generic;
using System.Web;
using System.Web.Routing;
using Microsoft.AspNet.FriendlyUrls;

namespace WebSite2
{
    public static class RouteConfig
    {
        public static void RegisterRoutes(RouteCollection routes)
        {
            var settings = new FriendlyUrlSettings();
            settings.AutoRedirectMode = RedirectMode.Permanent;
            routes.EnableFriendlyUrls(settings);
        }
    }
}

感谢。

1 个答案:

答案 0 :(得分:0)

RouteConfig.cs文件定义了路由在Web应用程序中的工作方式。

只需移除与FriendlyUrlSettings相关的代码,它就可以按预期工作。

        public static void RegisterRoutes(RouteCollection routes)
        {
            var settings = new FriendlyUrlSettings();
            settings.AutoRedirectMode = RedirectMode.Permanent;
            routes.EnableFriendlyUrls(settings);
        }