2015-08-25 2 views
1

Im используя следующий код для загрузки страницы динамически из JavaScriptЛокализация динамического контроля оказанной пользователя

[WebMethod] 
[ScriptMethod(ResponseFormat = ResponseFormat.Json)] 
public string GetSimpleControl(string usercontrolName) 
{ 
    Page page = new Page(); 
    UserControl ctl = (UserControl)page.LoadControl(usercontrolName); 

    page.Controls.Add(ctl); 
    StringWriter writer = new StringWriter(); 
    HttpContext.Current.Server.Execute(page, writer, false); 
    return writer.ToString(); 
} 

Моя проблема в том, что он не локализован, но всегда использует язык по умолчанию. В пользовательском элементе управления я загружаю, я пытаюсь вызвать InitializeCulture и установить культуру:

System.Threading.Thread.CurrentThread.CurrentUICulture = cultureInfo 

Как это сделать?

ответ

0

Получил это, установив UICulture и Culture на странице. GetSimpleControl теперь выглядит как этот

[WebMethod] 
[ScriptMethod(ResponseFormat = ResponseFormat.Json)] 
public string GetSimpleControl(string usercontrolName) 
{ 
    Page page = new Page(); 
    page.Culture = "en"; 
    page.UICulture = "en"; 
    UserControl ctl = (UserControl)page.LoadControl(usercontrolName); 

    page.Controls.Add(ctl); 
    StringWriter writer = new StringWriter(); 
    HttpContext.Current.Server.Execute(page, writer, false); 
    return writer.ToString(); 

}

Смежные вопросы