English 中文(简体)
主计长行动方法单一乌拉尔
原标题:Single Url for an Controller Action method

Why there are so many ways to select an action method in ASP.NET MVC and how I avoid this? I mean, I can go to Index action method from /, /Home, /Home/Index. I think it will affect SEO ranking.

最佳回答
问题回答

这是由于全球轴心中设定的绕行路线:

routes.MapRoute(
            "Default",
            "{controller}/{action}/{id}",
            new { controller = "Home", action = "Index", id = UrlParameter.Optional }
        );

This configures a route with default values for both the controller and action. Thus:

  • /Home/Index will match this route with controller and action values explicitly defined
  • /Home will match the Default route and the routing config will supply a default controller of "Home"
  • / will match the Default route and the routing config will supply a default controller and action

You could change this by removing controller = "Home", action = "Index" from the third argument to MapRoute. This removes the defaults and requires that the URL explicitly specifies the controller and action.

您希望有第二个<代码>MapRoute,要求明确指明主页路线:

// route the root URL to the home page controller/action
routes.MapRoute("HomePage", "", new { controller = "Home", action = "Index" });

页: 1 不会前往任何控制人员/行动楼梯,你会得到404个,而不是回家。





相关问题
Anyone feel like passing it forward?

I m the only developer in my company, and am getting along well as an autodidact, but I know I m missing out on the education one gets from working with and having code reviewed by more senior devs. ...

How to Add script codes before the </body> tag ASP.NET

Heres the problem, In Masterpage, the google analytics code were pasted before the end of body tag. In ASPX page, I need to generate a script (google addItem tracker) using codebehind ClientScript ...

Transaction handling with TransactionScope

I am implementing Transaction using TransactionScope with the help this MSDN article http://msdn.microsoft.com/en-us/library/system.transactions.transactionscope.aspx I just want to confirm that is ...

System.Web.Mvc.Controller Initialize

i have the following base controller... public class BaseController : Controller { protected override void Initialize(System.Web.Routing.RequestContext requestContext) { if (...

Microsoft.Contracts namespace

For what it is necessary Microsoft.Contracts namespace in asp.net? I mean, in what cases I could write using Microsoft.Contracts;?

Separator line in ASP.NET

I d like to add a simple separator line in an aspx web form. Does anyone know how? It sounds easy enough, but still I can t manage to find how to do it.. 10x!

热门标签