По умолчанию все строки, отображаемые на странице (или представлении) Razor, кодируются как HTML , то есть все символы HTML преобразуются в их сущность HTML.Это мера безопасности, помогающая начинающему разработчику создавать потенциальные XSS-атаки на свой сайт.
Метод Html.Raw
не кодирует строку.Он предназначен для использования для рендеринга HTML на странице Razor.Я не понимаю, как это используется во фрагменте, который вы воспроизвели.Это бессмысленно.Следующие действия позволят добиться того же:
<input type="checkbox" name="selectedCourses" value="@course.CourseID" checked="@course.Assigned" />
Если значение course.Assigned
равно true
, отображается атрибут checked
.В противном случае это не так.