UrlMapping(String, String) Constructor
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Inicializa una nueva instancia de la clase UrlMapping.
public:
UrlMapping(System::String ^ url, System::String ^ mappedUrl);
public UrlMapping (string url, string mappedUrl);
new System.Web.Configuration.UrlMapping : string * string -> System.Web.Configuration.UrlMapping
Public Sub New (url As String, mappedUrl As String)
Parámetros
- url
- String
Dirección URL que se va a mostrar al usuario.
- mappedUrl
- String
Dirección URL que existe en su aplicación Web.
Ejemplos
En el ejemplo siguiente se usa el UrlMappingsSection del archivo Web.config para asignar dos direcciones URL y se agrega una asignación para una dirección URL adicional. Al modificar y guardar el archivo Web.config, la aplicación se reinicia.
<%@ 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>
Comentarios
El UrlMapping constructor está pensado principalmente para uso interno por ASP.NET. No es necesario derivar de esta clase y, dado que se puede usar para modificar el archivo Web.config, probablemente nunca tendrá que usarlo en el código.