IIS 7 - определить десятичный символ - PullRequest
1 голос
/ 05 мая 2010

Мой сервер IIS 7 использует кодовый файл C # .NET для чтения из базы данных MS SQL (на другом компьютере) и представляет его в Интернете.Ранее я делал аналогичную публикацию, но проблема всплыла, и я не смог ее исправить.

В связи с этим у меня возникла проблема с моим норвежским Windows Server под управлением IIS 7. Он читаетстолбцы из базы данных, которая возвращает некоторые координаты с десятичными знаками.В базе данных мне удалось изменить десятичный символ с норвежского значения по умолчанию (запятая) на точки, изменив настройки Windows.

Я сделал то же самое на сервере Windows 2008 под управлением IIS 7, но он по-прежнему переводитточки до запятых.Мне нужно, чтобы это были месячные.Я даже изменил код, чтобы преобразовать строки в строки, а затем заменить все запятые точками, но это все равно не работает.

Любая помощь здесь будет принята с благодарностью.

1 Ответ

5 голосов
/ 05 мая 2010

Перво-наперво - я предполагаю, что вы имеете в виду нечто вроде веб-форм ASP.NET, верно?

Если это так, то в файле web.config вы задали:

<globalization culture="auto"/>

Если вы это сделали, но у вас все еще возникают проблемы, возможно, неправильные языковые настройки, определенные в браузере. Проверьте это.

Вы можете опустить приведенную выше строку web.config, если вам не нужно определять локаль пользователя и всегда отображать десятичные дроби в соответствии с их предпочтениями.

Вы можете изменить эту строку следующим образом:

<globalization culture="NN-NO"/>

... чтобы заставить ваше веб-приложение всегда использовать норвежский Bokmål (Норвегия) (NN-NO) в качестве культуры по умолчанию, которая должна заставлять десятичные дроби отображать то, что вам нужно.

В качестве альтернативы вы можете выбрать форматирование любых десятичных знаков на экране в соответствии с определенным форматом, используя NumberFormatInfo, как в моем примере ниже:

NumberFormatInfo ni = Globalization.CultureInfo.GetCultureInfo("NB-NO").NumberFormat; 
Decimal.ToString("c", ni); 

Надеюсь, это поможет,

Ричард.

...