Considérez la nécessité de renvoyer un fichier texte brut à partir d'une méthode de contrôleur à l'appelant. L'idée est de télécharger le fichier plutôt que de le visualiser en texte brut dans le navigateur.
J'ai la méthode suivante, et cela fonctionne comme prévu. Le fichier est présenté au navigateur pour téléchargement et le fichier est rempli avec la chaîne.
Je voudrais rechercher une implémentation "plus correcte" de cette méthode, car je ne suis pas à 100% à l'aise avec le type de retour void
.
public void ViewHL7(int id)
{
string someLongTextForDownload = "ABC123";
Response.Clear();
Response.ContentType = "text/plain";
Response.AddHeader("Content-Disposition", string.Format("attachment; filename={0}.hl7", id.ToString()));
Response.Write(someLongTextForDownload);
Response.End();
}
Utilisez la méthode File sur la classe de contrôleur pour renvoyer un FileResult
public ActionResult ViewHL7( int id )
{
...
return File( Encoding.UTF8.GetBytes( someLongTextForDownLoad ),
"text/plain",
string.Format( "{0}.hl7", id ) );
}
Vous voudrez renvoyer un FileContentResult
de votre méthode.