Как остановить Gridview, кодирующий мой текст при редактировании - PullRequest
0 голосов
/ 31 марта 2009

Я пытался задать этот вопрос ранее, как только я не получил правильный ответ. Я использую GridView в административной области сайта, который я разработал. Я использую DetailsView для вставки данных в базу данных и Gridview для редактирования и удаления данных.

Мой запрос: Когда я добавляю данные в DetailsView, я вводю данные следующим образом: "PR Murphy & Associates" Обратите внимание на "&".

Что происходит, так это то, что когда он отображает данные в виде сетки, он отображает их как «PR Murphy & Associates», однако, когда я нажимаю кнопку редактирования, отображается «PR Murphy & amp Associates». Обратите внимание на закодированный & символ.

Моя проблема в том, что я не хочу, чтобы код htmlencode вообще символ &. Я довольно новичок в ASP.NET и не уверен, как достичь этой цели.

IE. Представление DetailsView, кодирующее строку при вставке данных в базу данных. Какой код я могу использовать, чтобы не допустить этого, и какое событие мне нужно нацелиться.

В моем предыдущем ответе было предложено установить HTMLEncode = "False" в виде сетки. Я попробовал это со связанным полем, и это не имело никакого значения. Также мне нужно, чтобы это поле было как TemplateField в GridView, чтобы я мог выполнить некоторую обработку ошибок в записях.

Надеюсь, это имеет смысл, и кто-то может направить меня в правильном направлении.

Спасибо

Ответы [ 3 ]

0 голосов
/ 31 марта 2009

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

0 голосов
/ 31 марта 2009

Значение должно быть закодировано . Если ваше значение равно AT&T, ваш окончательный HTML-код должен выглядеть примерно так:

<input type="text" value="AT&amp;T" />

Почтовый индекс и вывод HTML, если это не то, что вы видите.

0 голосов
/ 31 марта 2009

Полагаю, вы могли бы с помощью вашего шаблона вызвать метод, который заменит & на & снова. Поскольку вы хотите TemplateField, это будет пятиминутное исправление, которое, вероятно, не будет лучшим способом, но будет работать в крайнем случае.

Вставьте часть кода, чтобы мы могли редактировать / помогать.

...