developer tip

ASP.NET MVC : 컨트롤러 메서드에서 다운로드 할 일반 텍스트 파일 반환

copycodes 2020. 12. 7. 08:23
반응형

ASP.NET MVC : 컨트롤러 메서드에서 다운로드 할 일반 텍스트 파일 반환


컨트롤러 메서드에서 호출자에게 일반 텍스트 파일을 반환해야하는 필요성을 고려하십시오. 아이디어는 브라우저에서 일반 텍스트로 보는 것이 아니라 파일을 다운로드하는 것입니다.

다음과 같은 방법이 있으며 예상대로 작동합니다. 다운로드를 위해 파일이 브라우저에 표시되고 파일이 문자열로 채워집니다.

void반환 유형에 100 % 익숙하지 않기 때문에이 메서드의 '더 정확한'구현을 찾고 싶습니다 .

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();
}

컨트롤러 클래스에서 File 메서드를 사용하여 FileResult를 반환합니다.

public ActionResult ViewHL7( int id )
{
    ...

    return File( Encoding.UTF8.GetBytes( someLongTextForDownLoad ),
                 "text/plain",
                  string.Format( "{0}.hl7", id ) );
}

FileContentResult메서드에서 를 반환하고 싶을 것 입니다.

참고 URL : https://stackoverflow.com/questions/1569532/asp-net-mvc-returning-plaintext-file-to-download-from-controller-method

반응형