Файла Excel в другой формат указываемого его расширением имени файла (в формате Excel, экспортированный из GridView в)
Я экспорт таблицы в файл Excel и открывает нормально. Единственное, это предупреждение всегда появляется при каждом открытии файла excel:
The file you are trying to open < > is in a different format than specified by the file extension. Verify that the file is not corrupted and is from a trusted source before opening the file. Do you want to open the file now?
Код, который я использую:
HttpContext.Current.Response.Clear();
HttpContext.Current.Response.AddHeader("content-disposition", string.Format("attachment; filename={0}", "Single_Raw.xls"));
HttpContext.Current.Response.ContentType = "application/vnd.ms-excel";
using (StringWriter sw = new StringWriter())
{
using (HtmlTextWriter htw = new HtmlTextWriter(sw))
{
// some code
HttpContext.Current.Response.Write(sw.ToString());
HttpContext.Current.Response.End();
}
}
1 ответ:
Это потому, что Excel знает, что это не настоящий файл Excel, даже если вы назвали его с помощью an .расширение xls. В прошлом, чтобы избежать этого предупреждения, я использовал Microsoft.Офис.Взаимодействие.Ссылка Excel для построения моего выходного файла. Затем, когда вы закончите, у вас будет законный файл Excel.
Microsoft.Офис.Взаимодействие.Excel
Edit: я погуглил и нашел это предложение от Microsoft, но он требует, чтобы вы взломали реестр компьютер клиента (вероятно, это невозможно).