問題描述:
編寫asp.net程序,當編譯調試比較頻繁的時候,很容易經常地出現訪問被拒絕。形如:
分析器錯誤信息: 訪問被拒絕:“Microsoft.Web.UI.WebControls”。
源錯誤:
行 197: <add assembly="System.Web.Mobile, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
行 198: <add assembly="*"/>
.....
源文件: c:\windows\microsoft.net\framework\v1.1.4322\Config\machine.config 行: 198
源錯誤:
行 196: <add assembly="System.EnterpriseServices, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
行 197: <add assembly="System.Web.Mobile, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
行 198: <add assembly="*"/>
行 199: </assemblies>
行 200: </compilation>
源文件: c:\windows\microsoft.net\framework\v1.1.4322\Config\machine.config 行: 198
原因:
由於改動頻繁, c:\windows\microsoft.net\framework\v1.1.4322\Temporary ASP.NET Files\ 目錄下相應的目錄或文件被Index Server鎖定,重建索引。所以一般幾分鐘後會釋放,恢復正常。(沒弄明白之前,害我重起站點,重起IIS,關閉vs.net,好不忙乎,而且似乎也有用,(現在知道是把時間給賺足了-_-''),但就是治標不治本。現在終於明白了,一下子整個世界都清靜了。哈哈)
解決方案:
方法一:如果不用Index Server關了它。(服務裡關閉,最好禁用,那以後都清靜了。)
1.進入 控制面板-〉管理工具-〉服務,找到Indexing Service並點擊右鍵將其停止.
或者:
2.可以在MS-DOS下輸入 Net stop cisvc 命令禁止! 【我沒嘗試】
方法二:配置Index Server不對該目錄進行索引。
2.1、開始 -- 管理工具 -- 計算機管理(Win2003的位置,其他操作系統類似)打開計算機管理
2.2、展開計算機管理左邊樹中“服務和應用程序”節點,再在其下展開“索引服務”節點,再在其下展開“System”節點,再在其下展開“目錄”節點。
2.3、在計算機管理的右邊我們可以看到配置的索引服務目錄。
2.4、在“目錄”節點上右擊鼠標,選擇“新建”--“目錄”
2.5、在“添加目錄”對話框中,路經輸入框中輸入 ASP.net 的臨時文件目錄。默認應該是:
c:\<WINDIR>\Microsoft.NET\Framework\<Version Number>\Temporary ASP.NET Files 目錄。
<Version Number> 指你要處理的.net版本。
2.6、在“包含在索引中嗎?”選項中,選擇“否”
2.7、單擊“確定”按鈕
2.8、在“索引服務”節點上右鍵單擊,重起索引服務即可。
方法三: 可以刪除 bin\XX.pdb