2010-07-06 3 views

Antwort

24

die Response.ContentType Eigenschaft können Sie an der Spitze Ihrer .cshtml Datei enthält dann die XML in dem Inhalt der Ansicht:

@{ 
    Response.ContentType = "application/xml"; 
} 
<?xml version="1.0" encoding="UTF-8"?> 
<Response> 
    <Dial>415-123-4567</Dial> 
</Response> 
+3

Wow !! Du hast deine Antwort so bearbeitet, dass sie zu meiner passt, anstatt meine als akzeptierte Antwort auszuwählen? Das ist kalt, Mann ... eiskalt. (Überprüfen Sie die Revisionen jeder) – Mike

+0

Es ist ein Wiki, Sie sollten eine Bearbeitung vorgeschlagen oder kommentiert haben. Meines war veraltet, also habe ich es aktualisiert. –

18

An der Spitze der Razor-Datei, stellen Sie den Content der Antwort Objekt:

@{ 
    Response.ContentType = "application/xml"; 
} 
... xml here ... 
+0

Zu der Zeit schrieb ich die andere Antwort (erste Beta), dass Eigenschaft nicht zugänglich war. Ich werde das jetzt ausprobieren, danke! –

+4

@John Wenn das oben genannte für Sie funktioniert, würden Sie die akzeptierte Antwort ändern? Das obige ist _möglicherweise_ korrekter, obwohl beide das gewünschte Ergebnis erzielen. –

0

Wenn Sie ASP.NET MVC verwenden, können Sie die Änderung in Ihrer Aktionsmethode in der Steuerung zu machen, etwa so:

public ActionResult MyAction() { 
    Response.ContentType = "text/xml"; 
    return View(); 
} 
+1

Dies gilt nicht nur für einfache .cshtml-Dateien außerhalb von ASP.NET MVC –

+0

Dank @JohnSheehan, habe ich meine Antwort aktualisiert, um diese Notiz zu enthalten. –

Verwandte Themen