Длина закодированной строки больше максимальной, указанной для пользователя - PullRequest
0 голосов
/ 04 апреля 2011

Я использую ASP.NET с sql-сервером. У меня есть область, где пользователь может ввести текст максимальной суммы. Я закодирую этот текст в качестве хорошей меры, но закодированная длина может быть больше, чем эта максимальная сумма, когда я пытаюсь вставить его в базу данных.

Специальные символы кодируются 3 символами. Я не могу показать пользователю, что он превысил максимальное количество символов, потому что с его точки зрения он этого не сделал. Я также не могу установить поле базы данных в худшем случае (в 3 раза больше моего максимального количества).

Что бы вы сделали в этой ситуации?

Ответы [ 2 ]

0 голосов
/ 04 апреля 2011

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

0 голосов
/ 04 апреля 2011

Если ваша база данных хранит текст в формате Unicode, вам не нужно кодировать его перед сохранением. Вам нужно только закодировать его, когда вы отправляете его обратно клиенту.

...