SQL литералов (по крайней мере те, в SQL Server) не поддержки таких управляющих последовательностей (хотя вы можете просто нажать кнопку ввода в строке буквального, так что она охватывает несколько строк). См. this answer для некоторых альтернатив при записи его как Требование к SQL-строке.
Если запуск SQL программно из C#, используйте parameters, который будет обрабатывать это просто отлично:
sqlCommand.CommandText = "update emails set [email protected] where [email protected]"
sqlCommand.Parameters.AddWithValue("@body", "line 1 \r\n line2");
Обратите внимание, что обращение с строкового литерала (и преобразование побеге \r
и \n
характера последовательности) происходит в C# и значение (с CR и LF символов) передается SQL.
Если вышеуказанное не решило проблему, продолжайте читать.
4.10.13 The textarea element:
По историческим причинам, значение элемента нормализуется тремя различными способами для трех различных целей. Необработанным значением является значение, поскольку оно было первоначально установлено. Это не нормируется. Значение API - это значение, используемое в атрибуте IDL значения. Он нормализуется, так что разрывы строк используют символы «LF» (U + 000A). Наконец, есть значение представления формы. [При подаче формы текстовое поле] нормализуется так, что разрывы строк используют пары символов U + 000D CARRIAGE RETURN U + 000A LINE FEED (CRLF), и, кроме того, при необходимости с учетом атрибута обертывания элемента добавляются дополнительные разрывы строк обведите текст по заданной ширине.
Обратите внимание, что CR и LF представляют символы и не последовательность двух символов из \
с последующим либо на r
или n
символов - эта форма часто встречается в строковых литералов. Если он появляется как таковой, то что-то делает неправильное преобразование и ставит (или , оставляя) \
. Или, возможно, есть какие-то ошибочные «лишние косые черты»?
Как указывалось, хотя URL-декодирование, скорее всего, неверно, оно не будет непосредственно выполнять это преобразование. Однако, если преобразование произошло ранее, прежде чем «URL-код», то он (правильно) будет декодировать (неправильные) значения.
В любом случае это ошибка. Итак, узнайте где вводится неверное преобразование данных и исправляется (приложите отладчик и/или отслеживайте сетевой трафик для подсказок) - требуемая информация, чтобы изолировать, где просто нет в сообщении.
Почему в мире вы бы использовали UrlDecode? Вы расшифровываете URL-адрес? – RobIII
Chr (10) + Chr (13) –
Вы смутили меня, когда вы сказали «заменить \ r \ n на ввод». Когда вы нажимаете enter, генерируется \ r \ n. –