Html.ActionLink,Url.ActionLink和Html.RouteLink返回空网址

时间:2010-08-15 00:30:48

标签: asp.net-mvc asp.net-mvc-2 routing actionlink routelink

Html.ActionLink,Url.ActionLink和Html.RouteLink返回空网址,即使目标网址有效且从网址上正确显示?

我玩弄了这条路线,但它保持返回空网址,没有任何例外。

1 个答案:

答案 0 :(得分:0)

将项目从mvc2升级到mvc3时遇到同样的问题。 问题出现在旧的 global.asax 文件中,我将其放入新项目中。

因此,当我将旧的.asax替换为new时,actionLinks开始正常工作。

mvc3的

Global.asax

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Routing;

namespace RealtyMVC
{
public class MvcApplication : System.Web.HttpApplication
{
    //!!!add this method
    public static void RegisterGlobalFilters(GlobalFilterCollection filters)
    {
        filters.Add(new HandleErrorAttribute());
    }

    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

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

    }

    protected void Application_Start()
    {
        AreaRegistration.RegisterAllAreas();
        //!!!and add this call
        RegisterGlobalFilters(GlobalFilters.Filters);

        RegisterRoutes(RouteTable.Routes);
    }
}
}