Разметка в базе данных обрабатывается как строка, а не как код на языке просмотра, поэтому она просто записывается как текст, c # и все.
Два альтернативных метода:
1 - используйте систему шаблонов, такую как
ViewData["testMarkup"] = "I was here #YEAR#";
, и используйте метод, который заменяет ваши токены (например, #YEAR#
) их значениями во время рендеринга, например,
<%= ReplaceTokens((string)ViewData["testMarkup"]) %>
Где ReplaceTokens
выглядит следующим образом:
public static ReplaceTokens(string s)
{
return s.Replace("#YEAR#", DateTime.Now.Year)
}
2 - Сохраните свою разметку в частичном представлении и при необходимости сохраните имя частичного представления в базе данных.