使用asp.net Web表单进行URL路由时出现404错误

时间:2015-06-25 12:38:16

标签: c# asp.net

我正在我的asp.net网络表单中实现url路由。 这是我的地图类

public class RouteConfig
{
    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.MapPageRoute(
            "User",
            "Users/{id}",
            "~/Modules/UserMgmt/Users.aspx");
        routes.MapPageRoute(
            "Leave",
            "LeaveApply/{id}",
            "~/Modules/LeaveMgmt/LeaveApply.aspx");
    }
}

我在我的应用程序开始中调用此方法

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

这是我的锚标记

<a href="/Users/18">Users</a>

使用&#34; 使用Visual Studio开发服务器&#34;来自项目属性。

enter image description here

及其正常工作如下所示

enter image description here

当我配置使用&#34; 使用本地IIS Web服务器&#34;运行项目时来自项目属性。即)

enter image description here

我收到如下所示的错误 enter image description here

路由目录或项目名称(使用&#34配置时创建; 使用本地IIS Web服务器&#34;)在路由时丢失。当我把目录名称直接添加到浏览器的URL时它的工作。如下所示。

enter image description here

请你帮我解决这个问题。

1 个答案:

答案 0 :(得分:-1)

您的路由工作正常,否则您不会看到localhost / URLRouting / Users / 18的结果 但是,没有网站收听'localhost'地址。

如果要使用localhost,请打开IIS管理器,在根目录下创建WebSite并将其映射到项目物理文件夹。

从项目网络媒体资源中删除“UrlRouting”