tags:

views:

46

answers:

3

Hello

I'm trying to add a route that shows some data based on a string parameter like this:

http//whatever.com/View/078x756

How do I create that simple route and where to put it?

/M

+1  A: 

In your global.asax.cs file, you add the following lines:

routes.mapRoute(
    // The name of the new route
    "NewRoute",

    // The url pattern
    "View/{id}",

    // Defaulte route data                                     
    new { controller = "Home", action = "Index", id = "078x756" });

Make sure you add them before the registration of the default route - the ASP.NET MVC Framework will look throught the routes in order and take the first one that matches your url. Phil Haack's Routing Debugger is a valuable tool when troubleshooting this.

Tomas Lycken
+1  A: 

Routes are usually configured in the Application_Start method in Global.asax. For your particular case you could add a route before the Default one:

routes.MapRoute(
    "Views",
    "View/{id}",
    new
    {
        controller = "somecontroller",
        action = "someaction",
        id = ""
    }
);

routes.MapRoute(
    "Default",
    "{controller}/{action}/{id}",
    new
    {
        controller = "home",
        action = "index",
        id = ""
    }
);
Darin Dimitrov
A: 

Routes are added in the global.asax.cs

Example of adding a route:

namespace MvcApplication1 { // Note: For instructions on enabling IIS6 or IIS7 classic mode, // visit http://go.microsoft.com/?LinkId=9394801

public class MvcApplication : System.Web.HttpApplication
{
    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 = "" }  // Parameter defaults
        );


        routes.MapRoute(
           "WhatEver"
           "{View}/{id}",
           new {controller = "Home","action = "Index", id="abcdef"}
        );

    }

    protected void Application_Start()
    {
        RegisterRoutes(RouteTable.Routes);
    }
}

} }

Chuckie