Оценить код С# как строку в файле aspx
У меня есть эта проблема: из базы данных выдержала строку, содержащую HTML-код, смешанный с кодом С#. Мне жаль, что я не смог правильно запустить оба кода на моей странице .aspx.
например.
в моем .aspx:
<div><%= Model.repo.getCode() %></div>
и метод getCode() дают мне следующее:
<div id="secondDiv"><p><%= Model.Person.Name %></p></div>
поэтому я хочу, чтобы последний файл html выглядел следующим образом:
<div><div id="secondDiv"><p>Jhon</p></div></div>
любое предложение?
Ответы
Ответ 1
Может быть прямой способ привязать такое значение,
Но если вы можете хранить String.Formatable в базе данных, тогда было бы легко связать необходимые данные.
Используя String.Format, вы достигаете как,
возвращает строку из Model.repo.getCode() (видеть фигурные скобки)
"<div id="secondDiv"><p>{0}</p></div>";
И в ASP-коде
<div><%= string.format(Model.repo.getCode(),Model.Person.Name) %></div>
Ответ 2
Взгляните на этот проект, так как это помогло мне с аналогичной проблемой: https://github.com/formosatek/dotliquid В основном вы можете связать любые объекты с шаблоном и этот шаблон может вызывать свойства ваших объектов и даже использовать условную логику и циклы.