В настоящее время я использую HttpResponse для загрузки файлов с моего сервера. У меня уже есть несколько функций, используемых для загрузки файлов Excel / Word, но у меня возникают проблемы с загрузкой моего простого текстового файла (.txt).
С текстовым файлом я в основном выгружаю содержимое TextBox в файл, пытаясь загрузить файл с помощью HttpResponse, а затем удалить временный текстовый файл.
Вот пример моего кода, который работает для документов Excel / Word: Обратите внимание, что код выполняется без каких-либо ошибок. Файл создается и удаляется, но никогда не выгружается пользователю.
protected void saveLog(object sender, EventArgs e)
{
string date = DateTime.Now.ToString("MM_dd_yyyy_hhmm"); // Get Date/Time
string fileName = "BulkLog_"+ date + ".txt"; // Stitch File Name + Date/Time
string logText = errorLog.Text; // Get Text from TextBox
string halfPath = "~/TempFiles/" + fileName; // Add File Name to Path
string mappedPath = Server.MapPath(halfPath); // Create Full Path
File.WriteAllText(mappedPath, logText); // Write All Text to File
System.Web.HttpResponse response = System.Web.HttpContext.Current.Response;
response.ClearContent();
response.Clear();
response.ContentType = "text/plain";
response.AddHeader("Content-Disposition", "attachment; filename=" + fileName);
response.TransmitFile(mappedPath); // Transmit File
response.Flush();
System.IO.File.Delete(mappedPath); // Delete Temporary Log
response.End();
}