UrlMapping Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Устанавливает соответствие между URL-адресом, видимым пользователю, и URL-адресом страницы в веб-приложении. Этот класс не наследуется.
public ref class UrlMapping sealed : System::Configuration::ConfigurationElement
public sealed class UrlMapping : System.Configuration.ConfigurationElement
type UrlMapping = class
inherit ConfigurationElement
Public NotInheritable Class UrlMapping
Inherits ConfigurationElement
- Наследование
Примеры
В следующем примере файл Web.config используется UrlMappingsSection для сопоставления двух URL-адресов и добавляет сопоставление для дополнительного URL-адреса. При изменении и сохранении файла Web.config приложение перезапускается.
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Configuration" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
int showVal = 0;
protected void Page_Load(object sender, EventArgs e)
{
// Get the parameter value from the QueryString
if (Request.Params["show"] != null)
showVal = Int32.Parse(Request.Params["show"]);
// Show a page depending on the parameter value
NoShowPanel.Visible = (showVal == 0);
ShowHomePage.Visible = (showVal == 1);
ShowProductsPage.Visible = (showVal == 2);
ShowEventsPage.Visible = (showVal == 3);
// <Snippet2>
UrlMapping urlMap = null;
// Open Web.config
Configuration config =
WebConfigurationManager.OpenWebConfiguration("~");
// Get the UrlMappings section
UrlMappingsSection urlMapSection =
(UrlMappingsSection)config.GetSection(
"system.web/urlMappings");
// Modify UrlMapping in Web.config first time through
if (!Page.IsPostBack)
{
// If not already added, add a UrlMapping to the section
if (urlMapSection.UrlMappings.Count == 2)
{
urlMap = new UrlMapping("~/events.aspx",
"~/default.aspx?show=3");
urlMapSection.UrlMappings.Add(urlMap);
// This line assumes permission to write to disk
config.Save();
}
}
if (showVal > 0)
{
// <Snippet4>
urlMap = (UrlMapping)urlMapSection.UrlMappings[showVal - 1];
realURL.Text = urlMap.MappedUrl;
// </Snippet4>
}
// </Snippet2>
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>UrlMapping Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Panel ID="NoShowPanel" runat="server" Visible="true">
<h2>Show no page</h2>
<p><a href="home.aspx">Home.aspx</a></p>
<p><a href="products.aspx">Products.aspx</a></p>
<p><a href="events.aspx">Events.aspx</a></p>
</asp:Panel>
<asp:Panel ID="ShowHomePage" runat="server" Visible="false">
<h2>Home Page</h2>
<p><a href="products.aspx">Products.aspx</a></p>
<p><a href="events.aspx">Events.aspx</a></p>
</asp:Panel>
<asp:Panel ID="ShowProductsPage" runat="server" Visible="false">
<h2>Products Page</h2>
<p><a href="home.aspx">Home.aspx</a></p>
<p><a href="events.aspx">Events.aspx</a></p>
</asp:Panel>
<asp:Panel ID="ShowEventsPage" runat="server" Visible="false">
<h2>Events Page</h2>
<p><a href="home.aspx">Home.aspx</a></p>
<p><a href="products.aspx">Products.aspx</a></p>
</asp:Panel>
<p>The real URL for this page is
<asp:Label ID="realURL" runat="server">[None]</asp:Label></p>
</div>
</form>
</body>
</html>
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Web.Configuration" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Dim showVal As Integer
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
' Get the parameter value from the QueryString
If Not IsNothing(Request.Params("show")) Then
showVal = Int32.Parse(Request.Params("show"))
Else
showVal = 0
End If
' Show a page depending on the parameter value
NoShowPanel.Visible = (showVal = 0)
ShowHomePage.Visible = (showVal = 1)
ShowProductsPage.Visible = (showVal = 2)
ShowEventsPage.Visible = (showVal = 3)
' <Snippet2>
dim urlMap as UrlMapping
Dim config As Configuration
' Open Web.config
config = _
WebConfigurationManager.OpenWebConfiguration("~")
' Get the UrlMappings section
Dim urlMapSection As UrlMappingsSection
urlMapSection = _
CType(config.GetSection( _
"system.web/urlMappings"), UrlMappingsSection)
' Modify UrlMapping in Web.config first time through
If (Not Page.IsPostBack) Then
' If not already added, add a UrlMapping to the section
If urlMapSection.UrlMappings.Count = 2 Then
urlMap = New UrlMapping("~/events.aspx", _
"~/default.aspx?show=3")
urlMapSection.UrlMappings.Add(urlMap)
' This line assumes permission to write to disk
config.Save()
End If
End If
If showVal > 0 Then
'<Snippet4>
urlMap = CType(urlMapSection.UrlMappings(showVal - 1), UrlMapping)
realURL.Text = urlMap.MappedUrl
'</Snippet4>
End If
' </Snippet2>
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>UrlMapping Example</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Panel ID="NoShowPanel" runat="server" Visible="true">
<h2>Show no page</h2>
<p><a href="home.aspx">Home.aspx</a></p>
<p><a href="products.aspx">Products.aspx</a></p>
<p><a href="events.aspx">Events.aspx</a></p>
</asp:Panel>
<asp:Panel ID="ShowHomePage" runat="server" Visible="false">
<h2>Home Page</h2>
<p><a href="products.aspx">Products.aspx</a></p>
<p><a href="events.aspx">Events.aspx</a></p>
</asp:Panel>
<asp:Panel ID="ShowProductsPage" runat="server" Visible="false">
<h2>Products Page</h2>
<p><a href="home.aspx">Home.aspx</a></p>
<p><a href="events.aspx">Events.aspx</a></p>
</asp:Panel>
<asp:Panel ID="ShowEventsPage" runat="server" Visible="false">
<h2>Events Page</h2>
<p><a href="home.aspx">Home.aspx</a></p>
<p><a href="products.aspx">Products.aspx</a></p>
</asp:Panel>
<p>The real URL for this page is
<asp:Label ID="realURL" runat="server">default.aspx</asp:Label></p>
</div>
</form>
</body>
</html>
Комментарии
Класс UrlMapping позволяет сопоставить URL-адрес, отображаемый пользователям, с URL-адресом, который существует в веб-приложении. UrlMapping Добавление объекта в объект UrlMappingCollection является программным эквивалентом включения add
элемента в urlMappings
раздел файла конфигурации.
Каждый UrlMapping объект содержит два свойства, определяющие URL-адрес. Одно свойство указывает URL-адрес, отображаемый пользователю; другой указывает URL-адрес в веб-приложении. Символы пробелов в конце игнорируются как в свойствах Url , так и MappedUrl в конце.
Примечание
Свойство UrlMapping может записывать сведения в связанный раздел файла конфигурации в соответствии с ограничениями, определенными свойством AllowDefinition раздела, значение которого равно MachineToApplication. Любая попытка записи в файл конфигурации на уровне, запрещенном в иерархии, приведет к возникновению сообщения об ошибке, созданного анализатором. Однако этот класс можно использовать для чтения сведений о конфигурации на любом уровне иерархии.
Конструкторы
UrlMapping(String, String) |
Инициализирует новый экземпляр класса UrlMapping. |
Свойства
CurrentConfiguration |
Возвращает ссылку на экземпляр Configuration верхнего уровня, представляющий иерархию конфигурации, к которой относится текущий экземпляр ConfigurationElement. (Унаследовано от ConfigurationElement) |
ElementInformation |
Возвращает объект ElementInformation, содержащий неизменяемую информацию и функциональность объекта ConfigurationElement. (Унаследовано от ConfigurationElement) |
ElementProperty |
Возвращает объект ConfigurationElementProperty, представляющий сам объект ConfigurationElement. (Унаследовано от ConfigurationElement) |
EvaluationContext |
Возвращает объект ContextInformation для объекта ConfigurationElement. (Унаследовано от ConfigurationElement) |
HasContext |
Возвращает значение, указывающее, имеет ли свойство CurrentConfiguration значение |
Item[ConfigurationProperty] |
Возвращает или задает свойство или атрибут данного элемента конфигурации. (Унаследовано от ConfigurationElement) |
Item[String] |
Получает или задает свойство, атрибут или дочерний элемент данного элемента конфигурации. (Унаследовано от ConfigurationElement) |
LockAllAttributesExcept |
Возвращает коллекцию заблокированных атрибутов. (Унаследовано от ConfigurationElement) |
LockAllElementsExcept |
Возвращает коллекцию заблокированных элементов. (Унаследовано от ConfigurationElement) |
LockAttributes |
Возвращает коллекцию заблокированных атрибутов. (Унаследовано от ConfigurationElement) |
LockElements |
Возвращает коллекцию заблокированных элементов. (Унаследовано от ConfigurationElement) |
LockItem |
Возвращает или задает значение, указывающее, заблокирован ли элемент. (Унаследовано от ConfigurationElement) |
MappedUrl |
URL-адрес в веб-приложении. |
Properties |
Возвращает коллекцию свойств. (Унаследовано от ConfigurationElement) |
Url |
Получает URL-адрес, показываемый пользователю. |
Методы
DeserializeElement(XmlReader, Boolean) |
Считывает XML из файла конфигурации. (Унаследовано от ConfigurationElement) |
Equals(Object) |
Сравнивает текущий экземпляр ConfigurationElement с указанным объектом. (Унаследовано от ConfigurationElement) |
GetHashCode() |
Получает уникальное значение, представляющее текущий экземпляр ConfigurationElement. (Унаследовано от ConfigurationElement) |
GetTransformedAssemblyString(String) |
Возвращает преобразованную версию указанного имени сборки. (Унаследовано от ConfigurationElement) |
GetTransformedTypeString(String) |
Возвращает преобразованную версию указанного имени типа. (Унаследовано от ConfigurationElement) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
Init() |
Задает объект ConfigurationElement в исходное состояние. (Унаследовано от ConfigurationElement) |
InitializeDefault() |
Используется для инициализации набора значений по умолчанию для объекта ConfigurationElement. (Унаследовано от ConfigurationElement) |
IsModified() |
При реализации в производном классе указывает, был ли изменен данный элемент конфигурации с момента последнего сохранения или загрузки. (Унаследовано от ConfigurationElement) |
IsReadOnly() |
Получает значение, показывающее, является ли объект ConfigurationElement доступным только для чтения. (Унаследовано от ConfigurationElement) |
ListErrors(IList) |
Добавляет ошибку "недействительное свойство" в данном объекте ConfigurationElement и всех его дочерних элементах к переданному списку. (Унаследовано от ConfigurationElement) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
OnDeserializeUnrecognizedAttribute(String, String) |
Возвращает значение, указывающее, встретился ли неизвестный атрибут при десериализации. (Унаследовано от ConfigurationElement) |
OnDeserializeUnrecognizedElement(String, XmlReader) |
Возвращает значение, указывающее, встретился ли неизвестный элемент при десериализации. (Унаследовано от ConfigurationElement) |
OnRequiredPropertyNotFound(String) |
Выдает исключение, если требуемое свойство не найдено. (Унаследовано от ConfigurationElement) |
PostDeserialize() |
Вызывается после десериализации. (Унаследовано от ConfigurationElement) |
PreSerialize(XmlWriter) |
Вызывается до сериализации. (Унаследовано от ConfigurationElement) |
Reset(ConfigurationElement) |
Восстанавливает внутреннее состояние объекта ConfigurationElement, включая блокировки и коллекции свойств. (Унаследовано от ConfigurationElement) |
ResetModified() |
Переустанавливает значение метода IsModified() в |
SerializeElement(XmlWriter, Boolean) |
Записывает содержание данного элемента конфигурации в файл конфигурации при реализации в производном классе. (Унаследовано от ConfigurationElement) |
SerializeToXmlElement(XmlWriter, String) |
Записывает внешние теги данного элемента конфигурации в файл конфигурации при реализации в производном классе. (Унаследовано от ConfigurationElement) |
SetPropertyValue(ConfigurationProperty, Object, Boolean) |
Задает для свойства указанное значение. (Унаследовано от ConfigurationElement) |
SetReadOnly() |
Задает свойство IsReadOnly() для объекта ConfigurationElement и всех подчиненных элементов. (Унаследовано от ConfigurationElement) |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
Unmerge(ConfigurationElement, ConfigurationElement, ConfigurationSaveMode) |
Изменяет объект ConfigurationElement для удаления всех значений, которые не должны сохраняться. (Унаследовано от ConfigurationElement) |