Response 物件負責將伺服器端處理結果輸出至用戶端瀏覽器,本文整理其核心方法與常用屬性,附帶實用範例。
| 方法 | 功能 |
|---|---|
| Write | 輸出字串/變數至瀏覽器 |
| WriteFile | 直接輸出檔案內容 |
| Redirect | 導向至指定 URL |
| Flush | 立即發送緩衝區內容 |
| End | 停止頁面處理,返回已產生內容 |
| Close | 關閉用戶端連線 |
| Clear | 清除緩衝區內容 |
| ClearHeaders | 清除回應標頭 |
| BinaryWrite | 輸出二進位資料(圖片、檔案下載) |
| AppendToLog | 寫入自訂資料至 IIS 日誌 |
Response.Write("Hello " + userName); // 輸出字串
Response.Write(DateTime.Now.ToString()); // 輸出變數
// 簡寫形式
<%= "Hello " + userName %>
Response.Redirect("~/Login.aspx"); // 相對路徑
Response.Redirect("https://example.com"); // 絕對 URL
// 導向並結束處理
Response.Redirect("Error.aspx", true);
// 告知瀏覽器資料傳輸完成,IIS 停止解析後續程式碼
Response.Write("處理完成");
Response.End();
byte[] fileBytes = File.ReadAllBytes(Server.MapPath("~/Files/report.pdf"));
Response.Clear();
Response.ContentType = "application/pdf";
Response.AddHeader("Content-Disposition", "attachment; filename=report.pdf");
Response.BinaryWrite(fileBytes);
Response.End();
for (int i = 0; i < 100; i++)
{
Response.Write($"處理項目 {i}...<br>");
Response.Flush(); // 立即推送至瀏覽器
System.Threading.Thread.Sleep(100);
}
Response.Cache.SetCacheability(HttpCacheability.Public);
Response.Cache.SetExpires(DateTime.Now.AddHours(1));
Response.AppendHeader("X-Custom-Header", "Value");