ТипScript скомпилирован в JavaScript. Когда вы посмотрите на результат JavaScript, полученный из вашего кода типа TypeScript, вы увидите, что переменная, объявленная с использованием ключевого слова var
, просто объявляется одинаковым образом.
Таким образом, область действия тоже такая: переменная доступен во всей содержащей функции. Это иногда называют подъемом .
Насколько я знаю, XSS - это проблема, когда вы получаете какой-то вклад от пользователя, мне не ясно, почему вы не должны доверять ответу от вашего собственного контроллера? То, что вы делаете, очень типично, и я видел бесчисленное количество обучающих уроков (например, c-sharpcorner , aspsnippets или dotnethowts и т. Д.).
] Кроме того, ASP.NET MVC View Engine по умолчанию кодирует HTML . Я не уверен, как вы визуализируете свой частичный вид, но если вы не используете @Html.Raw
, вы потенциально дважды закодируете результат.
Но если вы хотите закодировать результат HTML, вы можете экранировать свою строку HTML, см. Этот ответ