Saludos, soy nuevo en programación ASP.net, estoy desarrollando un proyecto web multi idioma, en el cual hay 2 idiomas (es-AR y en-US) que pueden ser seleccionados en una lista desplegable (el sitio incluye archivos de recursos .resx dentro de la carpeta
App_LocalResources) dicho proyecto está disponible para descargar aquí:
http://www.mediafire.com/download/4d7dbdthh2094s6/test-idiomas-urls.rar . Lo que necesito es que cuando seleccione cualquiera de los idiomas el lenguaje escogido aparezca al final de la URL, de cualquiera de estas formas: example.com/Default.aspx?culture=es-AR
ó example.com/Default.aspx?lang=es-AR ó example.com/Default.aspx?id=es-AR
¿Cómo podría lograrlo?
Este es el código del archivo MasterPage.master.vb
Imports System.Collections.Generic
Imports System.Linq
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Configuration
Imports System.Net.NetworkInformation
Imports System.Globalization
Imports System.Threading
Partial Public Class MasterPage
Inherits System.Web.UI.MasterPage
Protected Sub Page_Load(sender As Object, e As EventArgs)
If Session("myapplication.language") IsNot Nothing AndAlso Not IsPostBack Then
' Set drop down current language
DropDownList_Language.ClearSelection()
DropDownList_Language.Items.FindByValue(Session("myapplication.language").ToString()).Selected = True
End If
End Sub
Protected Sub DropDownList_Language_SelectedIndexChanged(sender As Object, e As EventArgs)
' Set the session variable with the selected language
Select Case DropDownList_Language.SelectedValue
Case "en-US"
Me.SetMyNewCulture("en-US")
Exit Select
Case "es-AR"
Me.SetMyNewCulture("es-AR")
Exit Select
Case Else
Exit Select
End Select
Response.Redirect(Request.Path)
End Sub
Private Sub SetMyNewCulture(culture As String)
Session("myapplication.language") = culture
End Sub
End Class