การล้างข้อมูลไฟล์ชั่วคราวของ ASP.NET


150

ฉันสามารถลบเนื้อหาของโฟลเดอร์นี้ได้อย่างปลอดภัยหรือไม่

C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\root

บนระบบมาตรฐาน Windows 2003 R2 เนื่องจากฉันไม่ได้ใช้ IIS (6/7)

หากเป็นกรณีนี้คุณช่วยชี้ให้ฉันดูเอกสารที่เกี่ยวข้องเกี่ยวกับงานรันไทม์ของ ASP.NET และงานบำรุงรักษาเช่นนี้ได้หรือไม่?

คำตอบ:


157

ใช่มันปลอดภัยที่จะลบสิ่งเหล่านี้แม้ว่ามันอาจบังคับให้คอมไพล์ recompilation แบบไดนามิกของแอปพลิเคชัน. NET ใด ๆ ที่คุณทำงานบนเซิร์ฟเวอร์

สำหรับพื้นหลังให้ดูบทความการทำความเข้าใจกับ ASP.NET การคอมไพล์แบบไดนามิกบน MSDN


ขอบคุณสำหรับคำตอบของคุณฉันหวังว่าในที่สุดฉันจะสามารถตอบแทนความโปรดปรานได้ในที่สุด!
Andrea Scarcella

40
น่าสังเกตว่าคุณจะต้องไม่ลบโฟลเดอร์ Temporary ASP.NET Files เอง แต่คุณสามารถลบเนื้อหาได้
Piedone

3
การล้างโฟลเดอร์นี้แก้ไขการตรวจจับเวอร์ชันอ้างอิงที่ไม่ถูกต้องในโครงการ InstallShield LE Setup (แอสเซมบลีหลักของฉันมีการอ้างอิงถึง EntityFramework 6.4 แต่บรรจุเป็นแพคเกจ 4.4 ซึ่งอยู่ในโฟลเดอร์นั้น)
Jerther

34

เพียงแค่อัปเดตเกี่ยวกับระบบปฏิบัติการปัจจุบัน (Vista, Win7 และอื่น ๆ ) - เส้นทางของไฟล์ชั่วคราว มีการเปลี่ยนแปลงอาจแตกต่างกันไปตามตัวแปรหลายตัว รายการด้านล่างไม่ชัดเจน แต่เป็นเพียงบางส่วนที่ฉันได้พบ:

การตั้งค่าตัวแปรสภาพแวดล้อม "temp" - จากนั้นจะเป็น:

%temp%\Temporary ASP.NET Files

สิทธิ์และแอปพลิเคชัน / กระบวนการใด (VS, IIS, IIS Express) กำลังเรียกใช้คอมไพเลอร์. Net การเข้าถึงโฟลเดอร์ C: \ WINDOWS \ Microsoft.NET \ Framework ต้องได้รับการยกระดับสิทธิ์และหากคุณไม่ได้พัฒนาภายใต้บัญชีที่มีสิทธิ์เพียงพออาจใช้โฟลเดอร์นี้:

c:\Users\[youruserid]\AppData\Local\Temp\Temporary ASP.NET Files

นอกจากนี้ยังมีกรณีที่โฟลเดอร์ temp สามารถตั้งค่าผ่านการกำหนดค่าสำหรับเครื่องหรือไซต์เฉพาะโดยใช้สิ่งนี้:

<compilation tempDirectory="d:\MyTempPlace" />

ฉันยังมีการตั้งค่าที่ขี้ขลาดในที่ทำงานที่เราไม่ได้เรียกใช้ Admin โดยค่าเริ่มต้นรวมถึงพวกไอทีมีสคริปต์การเข้าสู่ระบบที่ตั้ง% temp% และฉันได้รับไฟล์ temp ใน 3 ตำแหน่งที่แตกต่างกันขึ้นอยู่กับสิ่งที่รวบรวม และฉันยังไม่แน่ใจเกี่ยวกับวิธีการเลือกเส้นทางเหล่านี้ .... ถอนหายใจ

อย่างไรก็ตามdthrasherนั้นถูกต้องคุณสามารถลบสิ่งเหล่านี้ได้และ VS และ IIS จะทำการคอมไพล์ใหม่อีกครั้งตามต้องการ


10
คุณไม่ถูกต้อง C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Filesยังคงมีการชุมนุมที่รวบรวมแบบไดนามิก
Ross Presser

2
ที่จริงมันเป็นทั้งสอง - ฉันมีระบบบางอย่างที่โฟลเดอร์ Framework และอื่น ๆ ที่เป็นโฟลเดอร์ AppData ... ฉันจะดูว่าฉันสามารถหา diff .... arg
Jester

ฉันเดาว่าถ้าเว็บไซต์ของคุณทำงานใน IIS มันจะเป็น Framework เสมอ
Ross Presser

2
ในความคิดที่สองอาจขึ้นอยู่กับข้อมูลประจำตัวที่กลุ่มแอปพลิเคชันของคุณใช้
Ross Presser
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.