using Microsoft.Win32;
string filename=File1.Value;//這里使用了一個HtmlInputFile
System.IO.FileInfo fi=new System.IO.FileInfo(filename);
string fileextname=fi.Extension;
string DEFAULT_CONTENT_TYPE = "application/unknown";
RegistryKey regkey,fileextkey;
string filecontenttype;
try
{
regkey=Registry.ClassesRoot;
fileextkey=regkey.OpenSubKey(fileextname);
filecontenttype=fileextkey.GetValue("Content Type",DEFAULT_CONTENT_TYPE).ToString();
}
catch
{
filecontenttype=DEFAULT_CONTENT_TYPE;
}
Response.Clear();
Response.AddHeader("Content-Disposition", "attachment;filename=" + Server.UrlEncode(filename));
Response.ContentType=filecontenttype;
Response.WriteFile(filename);
System.IO.FileInfo fi=new System.IO.FileInfo(filename);
string fileextname=fi.Extension;
string DEFAULT_CONTENT_TYPE = "application/unknown";
RegistryKey regkey,fileextkey;
string filecontenttype;
try
{
regkey=Registry.ClassesRoot;
fileextkey=regkey.OpenSubKey(fileextname);
filecontenttype=fileextkey.GetValue("Content Type",DEFAULT_CONTENT_TYPE).ToString();
}
catch
{
filecontenttype=DEFAULT_CONTENT_TYPE;
}
Response.Clear();
Response.AddHeader("Content-Disposition", "attachment;filename=" + Server.UrlEncode(filename));
Response.ContentType=filecontenttype;
Response.WriteFile(filename);
西部e網(weste.net)編輯:經過測試,這段程序還真是不錯~~~節省了switch-case好大一段代碼,也解決了比如圖片、文本等不提示下載而直接顯示的問題。