Ну, во-первых, вы, вероятно, уже используете поле NVARCHAR или NTEXT в своей базе данных. Следовательно, содержимое поля кодируется как Unicode.
Было бы неплохо предположить, что ваша исходная форма публикации, отправленная с использованием кодировки UTF-8, и ваша принимающая страница имели свою Response.Codepage, установленную в 65001, чтобы входящая строка сохранялась в базе данных с точностью.
Если вышесказанное верно, то для отправки контента клиенту с использованием новой кодировки было бы просто установить правильную кодовую страницу страницы, для ISO-8869-1 мы используем кодовую страницу 1252. С кодовой страницей, установленной на 1252 любые данные, отправленные с использованием Response.Write
, будут преобразованы из собственного Unicode в кодовую страницу 1252.
Тем не менее, вы также можете обойтись, если поврежденные данные хранятся в БД, но в HTML все выглядит хорошо. Смотрите мой ответ здесь на старый вопрос, чтобы узнать, как это может быть. Этот же ответ содержит шаги, необходимые для восстановления данных в БД. После этой настройки должно быть достаточно выходной кодовой страницы.
Обратите внимание, что сам файл ASP должен быть сохранен как Windows-1252, а не как UTF-8, в противном случае любое статическое содержимое ASCII, отсутствующее в файле, будет неправильно принято клиентом.