2009-06-30 3 views
2

좋아요, 어쩌면 이것은 MVC 패턴에서 아니오입니다. 어떤 경우에는 그 대답을 찾고 있습니다. 그러나 데이터베이스에 일부 내용 html이 있고이를 뷰에 전달하려고한다고 가정 해 보겠습니다. ViewData 속성을 사용하여 페이지에 전달할 수 있다고 가정합니다. 문자열에 어떤 종류의 마사지를해야합니까 <h1>Hello World</h1> 같은 것을 얻으려면 Hello World '대신 <h1 > Hello World </h1 >'으로 표시해야합니다.ASP.NET MVC에서 ViewData를 통해 View에서 HTML로 페이지를 전달하는 방법은 무엇입니까?

+0

이런 식으로 ViewData를 사용하는 것은 "아니오"가 아니며 본인의 견해를 강력하게 입력하거나 MVVM 패턴을 사용하는 것이 장기적인 전략이며 오타/발생하기 쉬운 오류. –

답변

2

아무 것도 아니며, 바로보기에서 <%=Html.Encode(ViewData["yourkey"]) %> 대신 <%=ViewData["yourkey"] %>을 입력하십시오.

참고 : 데이터베이스의 데이터를 확실하게 신뢰하는 경우에만이 작업을 수행하십시오!

+1

정말 대단합니다 ... 코드를 보면 실제로 도움이 될 것입니다. 그러나 진지하게, 바보 같은 느낌을주지 않는 방법으로 명백한 것을 지적 해 주셔서 감사합니다. –

0

문자열을 ViewData에 넣기 전에 HTML을 제거해야합니다.

편집 : 페이지에 직접 ViewData를 인쇄하면 HTML 태그를 벗어나서는 안됩니다.


<%=ViewData["whatever"]%> 

이것은 C#이지만 VB.NET과 매우 비슷합니다.

+0

문자열에있는 html이 페이지에 도착할 때 html로 해석되도록하고 싶습니다. –

관련 문제