이 문서는 가리사니 개발자 포럼에 올렸던 글의 백업 파일입니다. 오래된 문서가 많아 현재 상황과 맞지 않을 수 있습니다.
CS0433: ‘ASP.~’ 형식이 ‘C:\WINDOWS\Microsoft.NET\Framework64\v2.0.50727\Temporary ASP.NET Files~’ 및 ‘C:\WINDOWS\Microsoft.NET\Framework64\v2.0.50727\Temporary ASP.NET Files~‘에 모두 있습니다.
식의 에러가 날 경우 Temporary 파일을 삭제해줘야합니다.
이 오류는 IIS의 버그로 중복으로 임시파일을 생성하면서 생기는 오류입니다.
(그러면서 중복됬다고 뭐라고합니다.)
방법 1.
출처 : http://anthonydotnet.blogspot.kr/2013/03/how-to-delete-dot-net-temporary-files.html
set net2_32="C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\*"
set net2_64="C:\Windows\Microsoft.NET\Framework64\v2.0.50727\Temporary ASP.NET Files\*"
set net4_32="C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files\*"
set net4_64="C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\*"
REM stop iis
net stop w3svc
REM delete .net temp files
FOR /D %%i IN (%net2_32%) DO RD /S /Q "%%i" DEL /Q /F %net2_32%
FOR /D %%i IN (%net2_64%) DO RD /S /Q "%%i" DEL /Q /F %net2_64%
FOR /D %%i IN (%net4_32%) DO RD /S /Q "%%i" DEL /Q /F %net4_32%
FOR /D %%i IN (%net4_64%) DO RD /S /Q "%%i" DEL /Q /F %net4_64%
REM start iis
net start w3svc
출처 : http://blogs.msdn.com/b/dougste/archive/2008/08/11/clearing-out-temporary-asp-net-files.aspx
방법 2. (사실상 같은방법)
iisreset /stop
rmdir /q /s "C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files"
rmdir /q /s "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files"
md "C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files"
md "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files"
xcacls "C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files" /E /G MYMACHINE\IIS_WPG:F /Q
xcacls "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files" /E /G MYMACHINE\IIS_WPG:F /Q
iisreset /start
하지만 두방법다. iis를 꺼야하는 위험이 있고. 클러스터 서비스를 하지않는이상.. 서비스 중인 iis를 끌 수 없습니다.
그래서 실무에서 한대의 서버로 사용시에는 그냥 해당파일의 파일/클래스명을 바꿉니다.
제가 개인적으로 느끼기에는 주로 윈도우 업데이트 이후 일어나는 것 같습니다. (이 시스템을 쓰는 회사 기준으로 몇달에 한번정도 일어나는 것 같습니다.)