2010-11-23 5 views
1

Ich habe einen HTML-Helfer, der in einer defekten Adresse und formatiert es, aber ich sehe die tatsächliche <br /> Tag als Text anstelle von a Zeilenumbruch auf meiner Webseite. Was mache ich, dass dies geschieht?Warum ist das Zeilenumbruch-Tag als Text von einem benutzerdefinierten HTML-Helfer anzeigen asp.net mvc

Hier ist ein Teil meiner Hilfsmethode

public static HtmlFormatAddress(this helper, string number 
    , string fraction 
    , string direction 
    , string street 
    , string type 
    ....) 
{ 
    var sb = new StringBuilder(); 
    if (!string.IsNullOrEmpty(number)) 
     sb.Append(number.Trim() + " "); 
    if (!string.IsNullOrEmpty(fraction)) 
     sb.Append(fraction.Trim() + " "); 
    if (!string.IsNullOrEmpty(direction)) 
     sb.Append(direction.Trim() + " "); 
    if (!string.IsNullOrEmpty(street)) 
     sb.Append(street + " "); 
    if (!string.IsNullOrEmpty(type)) 

    if (sb.Length > 0) 
     sb.Append("<br />"); 
    ..... 
    return sb.ToString(); 
} 

Antwort

3

Wenn diese MVC2 ist/ASP.NET 4, müssen Sie zurück eine MvcHtmlString statt String schreiben benötigen

Wenn nicht, dann sicher, dass Sie nicht die Ausgabe mit <%: %> kodieren, sondern verwenden <%= %>

+0

Danke, Andrew. Das war's. – zSynopsis

+0

Gern geschehen :) –

1

Sie wahrscheinlich verwenden die <%: %> Syntax, die die Zeichenfolge codiert.

Versuchen <%= %> statt

oder ändern Sie Ihre Rückkehr Typ MvcHtmlString mit dem Sie nur return MvcHtmlString.Create(sb.ToString());

Verwandte Themen