RouteCollection Class
Provides a collection of routes for ASP.NET routing.
System.Collections.ObjectModel.Collection<RouteBase>
System.Web.Routing.RouteCollection
Assembly: System.Web (in System.Web.dll)
The RouteCollection type exposes the following members.
| Name | Description | |
|---|---|---|
![]() | RouteCollection() | Initializes a new instance of the RouteCollection class. |
![]() | RouteCollection(VirtualPathProvider) | Infrastructure. Initializes a new instance of the RouteCollection class by using the specified virtual path provider. |
| Name | Description | |
|---|---|---|
![]() | Count | Gets the number of elements actually contained in the Collection<T>. (Inherited from Collection<T>.) |
![]() | Item[Int32] | Gets or sets the element at the specified index. (Inherited from Collection<T>.) |
![]() | Item[String] | Gets the route in the collection that has the specified name. |
![]() | Items | Gets a IList<T> wrapper around the Collection<T>. (Inherited from Collection<T>.) |
![]() | RouteExistingFiles | Gets or sets a value that indicates whether ASP.NET routing should handle URLs that match an existing file. |
| Name | Description | |
|---|---|---|
![]() | Add(T) | Adds an object to the end of the Collection<T>. (Inherited from Collection<T>.) |
![]() | Add(String, RouteBase) | Adds a route to the end of the RouteCollection object and assigns the specified name to the route. |
![]() | Clear | Removes all elements from the Collection<T>. (Inherited from Collection<T>.) |
![]() | ClearItems | Removes all the elements from the RouteCollection object. (Overrides Collection<T>.ClearItems().) |
![]() | Contains | Determines whether an element is in the Collection<T>. (Inherited from Collection<T>.) |
![]() | CopyTo | Copies the entire Collection<T> to a compatible one-dimensional Array, starting at the specified index of the target array. (Inherited from Collection<T>.) |
![]() | Equals(Object) | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) |
![]() | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) |
![]() | GetEnumerator | Returns an enumerator that iterates through the Collection<T>. (Inherited from Collection<T>.) |
![]() | GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
![]() | GetReadLock | Provides an object for managing thread safety when you retrieve an object from the collection. |
![]() | GetRouteData | Returns information about the route in the collection that matches the specified values. |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() | GetVirtualPath(RequestContext, RouteValueDictionary) | Returns information about the URL path that is associated with the route, given the specified context and parameter values. |
![]() | GetVirtualPath(RequestContext, String, RouteValueDictionary) | Returns information about the URL path that is associated with the named route, given the specified context, route name, and parameter values. |
![]() | GetWriteLock | Provides an object for managing thread safety when you add or remove elements in the collection. |
![]() | Ignore(String) | Defines a URL pattern that should not be checked for matches against routes. |
![]() | Ignore(String, Object) | Defines a URL pattern that should not be checked for matches against routes if a request URL meets the specified constraints. |
![]() | IndexOf | Searches for the specified object and returns the zero-based index of the first occurrence within the entire Collection<T>. (Inherited from Collection<T>.) |
![]() | Insert | Inserts an element into the Collection<T> at the specified index. (Inherited from Collection<T>.) |
![]() | InsertItem | Inserts the specified route into the RouteCollection object at the specified index. (Overrides Collection<T>.InsertItem(Int32, T).) |
![]() | MapPageRoute(String, String, String) | Provides a way to define routes for Web Forms applications. |
![]() | MapPageRoute(String, String, String, Boolean) | Provides a way to define routes for Web Forms applications. |
![]() | MapPageRoute(String, String, String, Boolean, RouteValueDictionary) | Provides a way to define routes for Web Forms applications. |
![]() | MapPageRoute(String, String, String, Boolean, RouteValueDictionary, RouteValueDictionary) | Provides a way to define routes for Web Forms applications. |
![]() | MapPageRoute(String, String, String, Boolean, RouteValueDictionary, RouteValueDictionary, RouteValueDictionary) | Provides a way to define routes for Web Forms applications. |
![]() | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
![]() | Remove | Removes the first occurrence of a specific object from the Collection<T>. (Inherited from Collection<T>.) |
![]() | RemoveAt | Removes the element at the specified index of the Collection<T>. (Inherited from Collection<T>.) |
![]() | RemoveItem | Removes the route from the RouteCollection object at the specified index. (Overrides Collection<T>.RemoveItem(Int32).) |
![]() | SetItem | Replaces the route at the specified index. (Overrides Collection<T>.SetItem(Int32, T).) |
![]() | ToString | Returns a string that represents the current object. (Inherited from Object.) |
| Name | Description | |
|---|---|---|
![]() ![]() | ICollection.CopyTo | Copies the elements of the ICollection to an Array, starting at a particular Array index. (Inherited from Collection<T>.) |
![]() ![]() | ICollection<T>.IsReadOnly | Gets a value indicating whether the ICollection<T> is read-only. (Inherited from Collection<T>.) |
![]() ![]() | ICollection.IsSynchronized | Gets a value indicating whether access to the ICollection is synchronized (thread safe). (Inherited from Collection<T>.) |
![]() ![]() | ICollection.SyncRoot | Gets an object that can be used to synchronize access to the ICollection. (Inherited from Collection<T>.) |
![]() ![]() | IEnumerable.GetEnumerator | Returns an enumerator that iterates through a collection. (Inherited from Collection<T>.) |
![]() ![]() | IList.Add | Adds an item to the IList. (Inherited from Collection<T>.) |
![]() ![]() | IList.Contains | Determines whether the IList contains a specific value. (Inherited from Collection<T>.) |
![]() ![]() | IList.IndexOf | Determines the index of a specific item in the IList. (Inherited from Collection<T>.) |
![]() ![]() | IList.Insert | Inserts an item into the IList at the specified index. (Inherited from Collection<T>.) |
![]() ![]() | IList.IsFixedSize | Gets a value indicating whether the IList has a fixed size. (Inherited from Collection<T>.) |
![]() ![]() | IList.IsReadOnly | Gets a value indicating whether the IList is read-only. (Inherited from Collection<T>.) |
![]() ![]() | IList.Item | Gets or sets the element at the specified index. (Inherited from Collection<T>.) |
![]() ![]() | IList.Remove | Removes the first occurrence of a specific object from the IList. (Inherited from Collection<T>.) |
The RouteCollection class provides methods that enable you to manage a collection of objects that derive from the RouteBase class.
Typically, you will use the static Routes property of the RouteTable class to retrieve a RouteCollection object. The Routes property stores all the routes for an ASP.NET application. ASP.NET routing iterates through the routes in the Routes property to find the route that matches a URL.
To construct a URL, you call the GetVirtualPath method and pass in a collection of values. The GetVirtualPath method finds the first route with parameters that match the values that you passed in, and returns a VirtualPathData object that contains information about the matching route. You retrieve the URL through the VirtualPath property of the VirtualPathData object.
You can add a route either with a name or without a name. Including a name enables you to distinguish between similar routes when URLs are constructed. If you do not specify a name, ASP.NET routing uses the first matching route in the collection to construct a URL.
When you add an unnamed route to the RouteCollection object, you cannot add a route that already is in the collection. When you add a named route, you cannot use a name that already identifies a route in the collection.
You use the GetReadLock method and the GetWriteLock method to make sure that you interact with the collection without conflicts from other processes.
For information about how to add routes to a RouteCollection object, see ASP.NET Routing.
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

