2013-07-04 3 views
2

Я работаю над приложением Windows, которое загружает шаблон с http-URL с помощью WebClient.Загрузить файл на основе языка (Текущая культура)

Я должен реализовать локализацию в отчете. Приложение всегда будет на языке по умолчанию (на английском языке), и у меня будет переменная, в которой будет храниться язык, на котором должен печататься отчет. Шаблон отчета будет загружен на основе языка. Шаблоны отчетов различны для каждого языка, имеющего именования, как

по умолчанию: http://www.xyz.com/report/report.htm

Английский: report.en-US.htm, Испанский: report.es-ES.htm Португальский: report.pt-PT .htm

Есть ли у меня ti переключатель switch..case для каждого языка, или это возможно любым другим способом.

ответ

1

Если формат файла останется же вы могли бы сделать это

string cultureCode = "en-US"; //set current locale  
Uri reportUri = new Uri(String.Format("http://www.xyz.com/report/report.{0}.htm", cultureCode), UriKind.Absolute); 

Таким образом, она будет динамически создать URI для вас с добавлением соответствующей локали. В качестве быстрого способа

public void Uri GetLocalReportUri(string cultureCode) 
{ 
    return new Uri(String.Format("http://www.xyz.com/report/report.{0}.htm", cultureCode), UriKind.Absolute); 
} 
1

Вы можете использовать класс глобализацию, чтобы получить текущую культуру. Попробуйте следующее.

string culture = System.Globalization.CultureInfo.CurrentCulture.Name; 

string destUri = String.Format("http://www.xyz.com/report/report.{0}.htm", culture); 
Смежные вопросы