2016-09-12 5 views
0

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

throw new ArgumentNullException(name, "El parámetro es obligatorio."); 

Результатом является то, что текст «El parámetro эс obligatorio Имя параметра:. XXXX» отображается.

Мне нужно «Название параметра» для перевода на испанский. Мне кажется, мне нужно изменить тему потока, но я не уверен, как это сделать, поскольку это служба WCF.

ответ

1

Если язык зависит от конкретного клиента, я бы создал перегрузку функций службы с дополнительным параметром для языка и установил как CurrentCulture, так и CurrentUICulture.

Если язык не зависит от клиента (т. Е. Того же языка для всего сайта), установите его во время запуска. Обратите внимание, что новый поток наследует язык от Windows, а не от родительского потока, поэтому вы должны установить его снова для каждого только что созданного потока (более новая версия .Net framework позволяет перезаписать это поведение).

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

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