// Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. namespace Microsoft.AspNet.Mvc { /// /// Defines the contract for the helper to build URLs for ASP.NET MVC within an application. /// public interface IUrlHelper { /// /// Generates a fully qualified or absolute URL for an action method by using the specified action name, /// controller name, route values, protocol to use, host name and fragment. /// /// The name of the action method. /// The name of the controller. /// An object that contains the parameters for a route. /// The protocol for the URL, such as "http" or "https". /// The host name for the URL. /// The fragment for the URL. /// The fully qualified or absolute URL to an action method. string Action(string action, string controller, object values, string protocol, string host, string fragment); /// /// Converts a virtual (relative) path to an application absolute path. /// /// /// If the specified content path does not start with the tilde (~) character, /// this method returns unchanged. /// /// The virtual path of the content. /// The application absolute path. string Content(string contentPath); /// /// Returns a value that indicates whether the URL is local. /// /// The URL. /// true if the URL is local; otherwise, false. bool IsLocalUrl(string url); /// /// Generates a fully qualified or absolute URL for the specified route values by /// using the specified route name, protocol to use, host name and fragment. /// /// The name of the route that is used to generate URL. /// An object that contains the parameters for a route. /// The protocol for the URL, such as "http" or "https". /// The host name for the URL. /// The fragment for the URL. /// The fully qualified or absolute URL. string RouteUrl(string routeName, object values, string protocol, string host, string fragment); } }