Wie kann ich das entfernen von white-spaces aus ASP.NET MVC# Ausgabe?
Wie kann ich Sie entfernen alle white-spaces aus ASP.NET MVC-3-Ausgabe?
UPDATE: ich wissen, wie kann ich die Verwendung von string.Replace-Methode oder Reguläre Ausdrücke zu entfernen, weiß-Leerzeichen aus einer Zeichenfolge, Aber ich weiß nicht, wie kann ich ein Thema in ASP.NET MVC 3, für entfernen Sie alle white-spaces von der Ausgabe-string. Zum Beispiel, wenn die "OnResultExecuted" - Methode aufgerufen und das Ergebnis zum senden bereit ist, um den end-Benutzer-browser, ich möchte zu erhalten Ergebnis als Zeichenfolge oder einem Stream-Objekt; kein Unterschied zwischen Ihnen, und meine Arbeit auf Sie.
Vielen Dank an alle. 🙂
- Wenn ich verstehe, Javad richtig, die Frage über das entfernen zusätzlicher Leerzeichen aus der endgültigen HTML-Ausgabe für die gesamte Seite. Bringen msn.com und einen Blick auf die Quelle und es wird klar werden. Ich denke der IIS-Komprimierung lösen helfen, aber es muss mehr gewonnen werden, indem Sie Strippen die Leerzeichen oder msn.com würde es nicht tun. In web-Formularen, die wir Taten dies mit einem Modul. Nicht sicher, ob alle Haken noch da sind in MVC. codeproject.com/Articles/38067/...
- Ich fand den folgenden stackoverflow-Frage: stackoverflow.com/questions/2935657/...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Fand ich meine Antwort und erstellen Sie eine endgültige Lösung wie diese:
Erstellen Sie zunächst eine Basis-Klasse zu zwingen Aussicht zu Erben, die, wie unten, und überschreiben von Methoden:
Dann sollten wir machen einige änderungen in
web.config
- Datei, die sich inViews
Ordner -siehe hier für mehr details.if (typeof
Zeile zu Lesenif (typeof(HtmlString).IsAssignableFrom(value.GetType()))
. Diese änderung können Ihre Lösung funktioniert einwandfrei in meinem MVC5 Projekt, wo diese beiden Arten Synonym verwendet werden (MvcHtmlString erbt von der neueren HtmlString).<pre> valid spaces we don't want to remove </pre>
einen Weg, den Sie können, ist, dass eine benutzerdefinierte Ansicht erstellen Seite Erbe, in, dass, überschreiben
Write()
Methoden (3-Methoden gegründet), und in diesen Methoden, castobject
s zustring
s, weiß entfernen-Räume, und schließlich rufen Sie diebase.Write()
;Könnten Sie die String.Ersetzen Methode:
oder einen Regex verwenden, wenn Sie möchten, entfernen Sie auch Tabulatoren und neue Linien:
sollte den trick tun.