Desidero restituire un codice XML anziché HTML nel file cshtml di WebMatrix? Come si modifica l'intestazione del tipo di contenuto?Come si imposta il tipo di contenuto per una risposta di WebMatrix/Rasoio?
risposta
utilizzare la proprietà Response.ContentType nella parte superiore del file .cshtml quindi includere il codice XML nel contenuto della vista:
@{
Response.ContentType = "application/xml";
}
<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Dial>415-123-4567</Dial>
</Response>
Wow !! Hai modificato la tua risposta per corrispondere alla mia piuttosto che selezionare la mia come risposta accettata ?? Fa freddo, amico ... ghiacciato. (Controlla le revisioni di tutti) – Mike
È un wiki, dovresti aver proposto una modifica o commentato su questo. Il mio è scaduto, quindi l'ho aggiornato. –
Nella parte superiore del file Razor, impostare il ContentType della risposta oggetto:
@{
Response.ContentType = "application/xml";
}
... xml here ...
Nel momento in cui ho scritto l'altra risposta (prima beta) che la proprietà non era accessibile. Ci proverò ora, grazie! –
@John se quanto sopra ha funzionato per te prenderebbe in considerazione la modifica della risposta accettata? Quanto sopra è _possibilmente_ più corretto, sebbene entrambi raggiungano il risultato desiderato. –
Se si utilizza ASP.NET MVC, è possibile scegliere di fare il cambiamento nel vostro metodo di azione nel controller, in questo modo:
public ActionResult MyAction() {
Response.ContentType = "text/xml";
return View();
}
Questo non si applica ai soli file .cshtml al di fuori di ASP.NET MVC –
Grazie a @JohnSheehan, ho aggiornato la mia risposta per includere quella nota. –
Dovevo solo capirlo, quindi sto postando che altri possano trovare la risposta in futuro. –