Está en la página 1de 3

Este tema se tradujo de forma manual.

Mueva el puntero sobre las frases del artículo para ver el texto original.

Cómo: Recuperar valores de recursos mediante


programación
.NET Framework 4

Puede utilizar sintaxis declarativa para establecer los valores de las propiedades de control de servidor ASP.NET
como un valor de recurso.O bien, puede recuperar los valores de los recursos mediante programación.Podría
hacerlo si el valor del recurso no es conocido en tiempo de diseño o si desea establecer el valor del recurso a
partir de una condición en tiempo de ejecución.

Puede obtener valores de recursos a partir de archivos de recursos locales y globales que utilicen métodos que
devuelven un objeto que es posible convertir al tipo apropiado.Dado que ASP.NET compila los recursos globales
con establecimiento inflexible de tipos, también se pueden obtener recursos globales mediante miembros con
establecimiento inflexible de tipos.

Para recuperar mediante programación valores de recursos

Llame al método GetLocalResourceObject o GetGlobalResourceObject para leer determinados recursos de


un archivo de recursos global o local, respectivamente.Estos métodos sobrecargados están disponibles en
1 2
las clases HttpContext y TemplateControl .

El método GetGlobalResourceObject toma el nombre de una clase de recursos y el identificador de


recursos.El nombre de clase se basa en el nombre del archivo .resx.Por ejemplo, se hace referencia al
archivo WebResources.resx y a todos los archivos localizados asociados mediante el nombre de clase
WebResources.

El método GetLocalResourceObject toma un nombre del recurso que representa una propiedad
ResourceKey3.

En el siguiente ejemplo de código se muestra cómo obtener el valor de un recurso de un archivo de


recursos local y global.Los métodos devuelven un objeto; por consiguiente, debe convertir el recurso al
tipo adecuado.

Un archivo de recursos local predeterminado almacenado en la carpeta especial App_LocalResources


recibe el nombre con arreglo a la página ASP.NET.Por ejemplo, si el código siguiente se emplea en una
página Default.aspx, el archivo de recursos se debe denominar Default.aspx.resx.Para este ejemplo,
agregue un recurso de cadena a este archivo denominado Button1.Text con el valor "Found Resources".

También para este ejemplo, un archivo de recursos predeterminado global que está almacenado en la
carpeta especial App_GlobalResources se denomina WebResourcesGlobal.resx.Agregue un recurso de
4
cadena denominado LogoUrl con el valor http://go.microsoft.com/fwlink/?LinkId=49295 o la dirección
URL de otra imagen.

VB
<%@ Page Language="VB" %>

<script runat="server">
ProtectedSub Button1_Click( _
ByVal sender AsObject, ByVal e As System.EventArgs)
Button1.Text = _
GetLocalResourceObject("Button1.Text").ToString()
Image1.ImageUrl = _
CType(GetGlobalResourceObject("WebResourcesGlobal", _
"LogoUrl"), String)
Image1.Visible = TrueEndSub
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >


<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button ID="Button1" runat="server"
OnClick="Button1_Click"
Text="Get Resources" />
<asp:Image ID="Image1" runat="server"
Visible="false" />
</div>
</form>
</body>
</html>

C#
<%@ Page Language="C#" %>

<script runat="server">
protectedvoid Button1_Click(object sender, EventArgs e)
{
Button1.Text =
GetLocalResourceObject("Button1.Text").ToString();
Image1.ImageUrl =
(String)GetGlobalResourceObject(
"WebResourcesGlobal", "LogoUrl");
Image1.Visible = true;
}
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >


<head id="Head1" runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Button ID="Button1" runat="server"
OnClick="Button1_Click"
Text="Get Resources" />
<asp:Image ID="Image1" runat="server"
Visible="false" />
</div>
</form>
</body>
</html>

Para recuperar recursos globales mediante establecimiento inflexible de tipos

Obtenga el recurso mediante la sintaxis siguiente:

Resources.Class.Resource

Los recursos se compilan en el espacio de nombres Resources y cada recurso predeterminado se convierte
en miembro de la clase Resources.Por ejemplo, si ha creado el archivo de recursos predeterminado
WebResources.resx y el archivo contiene un recurso denominado WelcomeText, puede hacer referencia al
recurso en el código tal como se muestra en el siguiente ejemplo:

VB
Dim welcome AsString
welcome = Resources.WebResources.WelcomeText

C#
String welcome;
welcome = Resources.WebResources.WelcomeText;

Vea también
Conceptos
Información general sobre los recursos de las páginas web ASP.NET5

Tabla de vínculos
1
http://msdn.microsoft.com/es-es/library/system.web.httpcontext.aspx
2
http://msdn.microsoft.com/es-es/library/system.web.ui.templatecontrol.aspx
3
http://msdn.microsoft.com/es-
es/library/system.web.compilation.resourceexpressionfields.resourcekey.aspx
4
http://go.microsoft.com/fwlink/?LinkId=49295
5
http://msdn.microsoft.com/es-es/library/ms227427.aspx

Contenido de la comunidad

© 2011 Microsoft. Reservados todos los derechos.

También podría gustarte