2017-03-29 1 views
0

저는 이것이 실제로 C#과 다르지는 않지만 저는 (episerver에서) .cshtml 파일로 작업하고 있습니다.인용 부호가 c에서 HTML 이스케이프 코드로 출력되는 것을 막는 방법 #

따옴표가 포함 된 문자열 변수를 설정하고 있습니다. 이 단순화 된 버전이이 페이지에 렌더링

@{ 
    var backgroundcontent = "class='background' data-transition='mytransition'"; 
    if (Model.CurrentBlock.Photo) { 
     backgroundcontent = "class='photo' data-transition='none'"; 
    } 
    } 

, 내가 태그 내부를 렌더링하고있어 경우에 중대하다 ' 받고 있어요,하지만 난 태그 자체가 필요하지 않을 때.

HTML 따옴표로 고정되어 있는데 (속성에 대한 두 변수 설정과 같이 좀 더 복잡한 작업이 필요합니다), 아니면 재정의 할 수있는 방법이 있습니까?

+0

'backgroundcontent'를 뷰에 렌더링하는 cshtml 코드 스 니펫을 제공 할 수 있습니까? 면도기 (.cshtml)는 자동으로 문자열을 이스케이프 처리합니다. – Tim

+1

아래의 답변은 정확하지만, 귀하의 경우 실제로 두 개의 변수가 있습니다. –

+0

@Tim 나는'@ backgroundcontent'를 렌더링 중이었습니다 만,'@Html.Raw (@backgroundcontent)'가 트릭을했습니다. –

답변

6

Html.Raw(backgroundcontent); 시도해보십시오. 기본 문자열 이스케이프를 방지해야합니다.

+0

그래 맞습니다. 나는 이전에 시도 했었지만 아마 '@'로 시작하지 않았다고 맹세한다. –

관련 문제