이전에는 HTTP 처리기를 사용 해본 적이 없지만 하나만 사용할 수는 있지만 실제로 제대로 사용하고 있는지 확실하지 않습니다. CSV 파일로 저장 될 문자열을 생성했습니다. 사용자가 버튼을 클릭하면 사용자가 파일을 저장할 수 있도록 download dialog
상자가 열리길 원합니다. 내가 가지고있는 것은 작동하지만, 나는 web.config
파일을 수정하는 것에 대해 계속 읽고있다.잘못된 방법으로 핸들러를 사용하고 있습니까?
내 처리기 :
private string _data;
private string _title = "temp";
public void AddData(string data)
{
_data = data;
}
public bool IsReusable
{
get { return false; }
}
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/csv";
context.Response.AddHeader("content-disposition","filename=" + _title + ".csv");
context.Response.Write(_data);
context.Response.Flush();
context.Response.Close();
}
그리고 이것은 사용자가 다운로드 할 수있는 페이지입니다 :
string dataToConvert = "MYCSVDATA....";
csvHandler handler = new csvHandler();
handler.AddData(dataToConvert);
handler.ProcessRequest(this.Context);
이 잘 작동하지만 예 I도 없어 (버튼 클릭)에 이제까지 처리기를 인스턴스화하고 항상 web.config를 수정하는 것처럼 보입니다. 내가 뭔가 잘못하고 있는거야?
감사
답장을 보내 주셔서 감사합니다. 원래 코드 페이지에서 사용했지만 사용자가 다운로드 할 수 있도록 처리기를 사용하는 것이 더 효율적이라고하는 포럼 게시물을 읽었습니다. 그들의 시나리오가 달라졌을 것입니다 (즉, 응답 속성을 사용하는 것 이상을 수행하는 것). – XSL