Asp.net 如何在razor视图中正确地转义双引号?

Asp.net 如何在razor视图中正确地转义双引号?,asp.net,model-view-controller,razor,Asp.net,Model View Controller,Razor,通过使用反斜杠,我转义了双引号 Code @(model.Required == true ? "<span class=\"text-danger\"> *</span>" : "") 其中,*表示必填字段 我应该如何解决这个问题?有几种方法可以解决这个问题 使用Html.Raw: @Html.Raw(model.Required ? "<span class=\"text-danger\"> *</span>" : "") 我更喜欢这一点,

通过使用反斜杠,我转义了双引号

Code @(model.Required == true ? "<span class=\"text-danger\"> *</span>" : "")
其中,
*
表示必填字段


我应该如何解决这个问题?

有几种方法可以解决这个问题

  • 使用
    Html.Raw

    @Html.Raw(model.Required ? "<span class=\"text-danger\"> *</span>" : "")
    
    我更喜欢这一点,因为if语句的内容是纯HTML代码,因此不需要转义引号,并且它避免了使用
    HTML.Raw
    ,这会在代码中引入安全问题


  • 有几种方法可以做到这一点

  • 使用
    Html.Raw

    @Html.Raw(model.Required ? "<span class=\"text-danger\"> *</span>" : "")
    
    我更喜欢这一点,因为if语句的内容是纯HTML代码,因此不需要转义引号,并且它避免了使用
    HTML.Raw
    ,这会在代码中引入安全问题


  • 试试看:
    @Html.Raw(model.Required?”*“:”)
    或者简单的
    @if(model.Required){*}
    ,它看起来更整洁,是正确的Html,并且不需要(有时是危险的)Html.Raw。最后是第二个选项,你介意把它作为答案发布吗?谢谢试试看:
    @Html.Raw(model.Required?”*“:”)
    或者简单的
    @if(model.Required){*}
    ,它看起来更整洁,是正确的Html,并且不需要(有时是危险的)Html.Raw。最后是第二个选项,你介意把它作为答案发布吗?谢谢
    @Html.Raw(model.Required ? "<span class=\"text-danger\"> *</span>" : "")
    
    @if(model.Required) { <span class="required">*</span> }