ASP.NET MVC передает необработанный HTML из контроллера в представление

Я ломал голову над этим в течение нескольких дней, и я не уверен, является ли это проблемой с моей средой или с самим кодом, основанным на ASP.NET MVC (, хотя у меня есть 5-летний опыт работы с C #). Я использую недавнюю чистую установку Win7x64 и VS 2008 со всеми исправлениями.

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

ViewData["HTMLData"] = DAO.HTMLDataGet();

Когда я вижу вывод, он экранирован/закодирован в HTML. Я попытался использовать следующее, все из которых, похоже, не решили эту проблему:

<%: HttpUtility.HtmlDecode(ViewData["HTMLData"].ToString())%>

И...

<%: Server.HtmlDecode(ViewData["HTMLData"].ToString())%>

И...

<%: Html.Raw(ViewData["HTMLData"].ToString())%>

... он отлично берет необработанный HTML из таблицы базы данных, однако продолжает принудительно использовать эту проклятую кодировку независимо от того, что я пытаюсь. Из того, что я прочитал в MSDN, было примечание о проблемах, возникающих из-за неправильного декодирования HTML, содержащего пробелы (, которые есть у меня ). Поскольку я сомневаюсь, что я единственный, кто столкнулся с этим, я обращаюсь к вам за некоторыми идеями.

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

6
задан Dave 20 August 2012 в 07:13
поделиться