拒絕存取 temp 目錄。用來執行 XmlSerializer 的身分識別 "NT AUTHORITY\NETWORK SERVICE" 沒有存取 temp 目錄的足夠權限。
直接給 C:\Windows\Temp 加 NETWORK SERVICE 權限往往無效,因為 ASP.NET 實際使用的暫存目錄可能是:
C:\Windows\TempC:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files%TEMP%)Path.GetTempPath() 查看實際路徑。IIS_IUSRS (IIS 7+) 或 NETWORK SERVICE (IIS 6) 讀取/寫入/修改 權限。net stop w3svc /y && net start w3svc若問題在執行清理腳本 (刪除暫存檔) 後出現,可能誤刪了 Temporary ASP.NET Files 目錄結構。手動重建:
mkdir "C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files"
icacls "C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files" /grant "IIS_IUSRS:(OI)(CI)F"