2011-02-15 3 views
1

.Replace(Environment.NewLine, "<br />")이 결과를 제공 않습니다.Replace (Environment.NewLine, "<br />")

asdasd<br />waahahahaha<br />asdadsa<br />multiline<br /><br /><br />asdad 
+6

등의 문자가있을 수 있습니다. –

+0

내가 원하는 것은
이 떨어져서 다음 줄을 가져오고 – paul

답변

4

"여러"와 "asdad"사이에 하나 개 이상의 새로운 라인이있는 아마 때문이다.

var someText = string.Format("First line{0}Second line{0}Multiple line breaks{0}{0}{0}some text", Environment.NewLine); 

var html = someText.Replace(Environment.NewLine, "<br />"); 

HTML은 지금과 같이 표시됩니다 :

First line<br />Second line<br/>Multiple line breaks<br /><br /><br />some text 

편집

를 귀하의 경우 귀하의 웹 페이지가 웹 브라우저에서 <br />를 표시합니다 html 출력을 인코딩하기 때문에 새 행을 만들지 않습니다. 당신이 할 필요가 무엇

가 사용 HtmlString이며,이 시도 :

<div class="display-field"> 
    <%: new HtmlString(Model.Body.Replace(Environment.NewLine, "<br />")) %> 
</div> 

또한 약 "ASP.NET MVC Razor - output HTML string non escaped" 이야기에 StackOverflow 여기에이 스레드를 참조하십시오.

+0

하지만

<%: Model.Body.Replace(Environment.NewLine, "
")%>
paul

+0

@paul을 사용하여,'Model.Body'는'mutiline'과'asdad' 사이에 여러 개의 NewLines를 포함 할 가능성이 큽니다. –

+0

아니요 ...하지만 페이지 소스를 볼 때 그
이 지금은 <입니다. br/> – paul

관련 문제