0
我正在根據用戶選擇來設置inline
或attachment
的處置方式。它工作但非常間歇。一旦我在同一個瀏覽器中選擇內嵌相同的文件,它就會按預期工作。一旦我切換到附件,除非關閉並重新打開瀏覽器,否則我無法獲得所需的結果。我確實清楚了上下文並且清除了它。C#中的內容處置問題
下面是我使用的代碼:
public void GetResult(ControllerContext context)
{
context.HttpContext.Response.Buffer = true;
context.HttpContext.Response.Clear();
context.HttpContext.Response.ContentType = ContentType;
ContentDisposition disposition = new ContentDisposition();
disposition.FileName = FileName;
disposition.Inline = this.ContentDispositionType == ContentDispositionType.Inline ? true : false;
context.HttpContext.Response.AddHeader("content-disposition", disposition.ToString());
context.HttpContext.Response.WriteFile(context.HttpContext.Server.MapPath(Path));
context.HttpContext.Response.Flush();
context.HttpContext.Response.End();
}
謝謝,這似乎工作,雖然我必須進一步測試。另外,爲什麼有些文件總是作爲附件呈現,即使它們被指定爲內聯? – DotnetDude 2010-07-07 17:29:33
如果瀏覽器不知道內容類型,因此不知道運行哪個應用程序將是一個附件下載 – 2010-07-07 17:45:46