У меня есть база данных sql, в которой хранятся некоторые документы.C# ASP.NET 3.5 проблемы с загрузкой содержимого файлов
Пользователь может войти в приложение и просмотреть список своих документов.
При нажатии ссылки на ссылку в виде сетки их документов я получаю файл из базы данных, записываю его в файловую систему и выполняю этот код. Метод
System.IO.FileInfo file = new System.IO.FileInfo(System.Configuration.ConfigurationManager.AppSettings["UploadPath"] + DocumentName);
Response.Clear();
Response.ClearContent();
Response.ClearHeaders();
Response.Cookies.Clear();
Response.Cache.SetCacheability(HttpCacheability.Private);
Response.CacheControl = "private";
Response.Charset = System.Text.UTF8Encoding.UTF8.WebName;
Response.ContentEncoding = System.Text.UTF8Encoding.UTF8;
Response.AppendHeader("Content-Length", file.Length.ToString());
Response.AppendHeader("Pragma","cache");
Response.AppendHeader("Expires", "60");
Response.ContentType = GetContentType(file.Extension);
Response.AppendHeader("Content-Disposition",
"inline; " +
"filename=\"" + file.Name + "\"; " +
"size=" + file.Length.ToString() + "; " +
"creation-date=" + DateTime.Now.ToString("R") + "; " +
"modification-date=" + DateTime.Now.ToString("R") + "; " +
"read-date=" + DateTime.Now.ToString("R"));
Мои GetContentType() просто возвращает соответствующий тип файла для файлов я позволяю «приложение/PDF, приложение/msw0rd и т.д.
Моя проблема заключается в том, что, когда файл будет сохранен, это сама веб-страница, а не файл из файловой системы. И в google chrome он помещает расширение .htm в конец имени файла, я думаю, потому что он знает, что это веб-страница?
Во всяком случае, отличный первый шагом было бы получить фактический файл, а не копию веб-страницы в HTML, на которой они сидят!
Спасибо.