Я пытаюсь вывести файл CSV во всплывающем окне.Я могу вывести CSV в главном окне, но не во всплывающем окне.Я использую тот же код.Например;Я использую форму для вывода файла CSV.Когда эта форма является основным окном, может выводить файл CSV.Когда я использую эту форму как всплывающее окно, она не может выводиться.Как я могу это сделать?
Это моя функция вывода CSV:
public void OutputCSV(DataTable dtValue, string strFilename)
{
if (TextUtility.IsNullOrEmpty(strFilename))
{
throw new I01Exception(Enums.ExType.System, "9909_35");
}
DataTable dt = dtValue;
StringBuilder sb = new System.Text.StringBuilder();
string strCh = ",";
//項目名
for (int k = 0; k < dt.Columns.Count; k++)
{
sb.Append("\"" + dt.Columns[k].Caption + "\"" + strCh);
}
sb.Remove(sb.Length - 1, 1);
//データ
foreach (DataRow row in dt.Rows)
{
sb.AppendLine(string.Empty);
for (int i = 0; i < dt.Columns.Count; i++)
{
sb.Append("\"" + row[i].ToString() + "\"" + strCh);
}
}
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.Buffer = true;
HttpContext.Current.Response.AppendHeader("content-disposition", string.Format("attachment; filename={0}", HttpUtility.UrlEncode(strFilename + ".csv")));
HttpContext.Current.Response.ContentType = "text/comma-separated-values";
HttpContext.Current.Response.ContentEncoding = Encoding.GetEncoding("shift-jis");
HttpContext.Current.Response.Write(sb.ToString());
HttpContext.Current.Response.Flush();
HttpContext.Current.ApplicationInstance.CompleteRequest();
HttpContext.Current.Response.End();
}