Route.Url Property

 

Gets or sets the URL pattern for the route.

Namespace:   System.Web.Routing
Assembly:  System.Web (in System.Web.dll)

public string Url { get; set; }

Property Value

Type: System.String

The pattern for matching the route to a URL.

Exception Condition
ArgumentException

Any of the following:

  • The value starts with ~ or /.

  • The value contains a ? character.

  • The catch-all parameter is not last.

Exception

URL segments are not separated by a delimiter or a literal constant.

When you assign a value to the Url property, the / character is interpreted as a delimiter when the URL is parsed. Use braces ({}) to define a variable that is referred to as a URL parameter. The value from the matching segment in the URL is assigned to the URL parameter. Any values in the Url property that are not enclosed in braces are treated as literal constants.

The ? character is not allowed in the Url property. Each URL segment must be separated by either a delimiter or literal constant. You can use {{ or }} as escape characters for a brace character.

The following example shows how to set the Url property in the class constructor. The pattern contains the literal value "Category" for the first segment and URL parameters for the next two segments.

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

public static void RegisterRoutes(RouteCollection routes)
{
    routes.Add(new Route
    (
         "Category/{action}/{categoryName}"
         , new CategoryRouteHandler()
    ));
}

.NET Framework
Available since 3.5
Return to top
Show: