1.“/MMTest”應用程序中的服務器錯誤。
對於不返回任何鍵列信息的 SelectCommand 不支持 UpdateCommand 的動態 SQL 生成。
說明: 執行當前 Web 請求期間,出現未處理的異常。請檢查堆棧跟蹤信息,以瞭解有關該錯
誤以及代碼中導致錯誤的出處的詳細信息。
異常詳細信息: System.InvalidOperationException: 對於不返回任何鍵列信息的 SelectCommand 不支持 UpdateCommand 的動態 SQL 生成。
源錯誤:
|
然後就是最後的更新,當然是用DataAdapter的Update()方法藉助CommandBuilder來實現,要注意的是,如果你的數據庫一開始沒有定義主鍵,那進行更新的時候會出錯,返回的錯誤將是“對於不返回任何鍵列信息的 SelectCommand 不支持 UpdateCommand 的動態 SQL 生成。”這是因爲我們用的Update()實際上是通過CommandBuilder動態生成sql語句,然後才進行的數據庫操作。但如果你在一開始創建DataAdapter時的那個sql語句沒有包含有主鍵的列的話,那CommandBuilder將不會發生作用。這一點是必須要牢記的。
2.
源錯誤:
執行當前 Web 請求期間生成了未處理的異常。可以使用下面的異常堆棧跟蹤信息確定有關異常原因和發生位置的信息。
堆棧跟蹤:
出現這個錯誤 肯定是數據庫的原因
1。查看數據庫是否爲只讀
2. 數據庫所在文件夾 是否有可寫權限
3。查看你的語句是否有問題
4。若有時候有,有時候沒有,一般爲數據庫併發訪問鎖表適成的,檢查對數據庫的訪問,保證每次對數據庫操作結束後關閉連接
總之 你必須總結出什麼時候報錯 是所有時候還是操作某個表的時候
------------------------------
3
From: http://www.netyi.net/zxjcs.asp?id=125
一、 調試 ASP.NET 應用程序時出現"未將項目配置爲進行調試"的錯誤信息 二、在發送調試 HTTP 請求時出現"無法啓動調試"的錯誤信息 三、調試 ASP.NET 應用程序時出現"訪問被拒絕。請檢查計算機調試管理器的 DCOM 配置設置。"的錯誤信息
四、調試 ASP.NET 應用程序時出現"無法在 Web 服務器上啓動調試"的錯誤信息 五、調試 ASP.NET 頁時 Visual Studio .NET 調試器不在斷點停止 |
說明: 執行當前 Web 請求期間,出現未處理的異常。請檢查堆棧跟蹤信息,以瞭解有關該錯誤以及代碼中導致錯誤的出處的詳細信息。
異常詳細信息: System.Data.OleDb.OleDbException: 操作必須使用一個可更新的查詢。
六、無法調試 ASP.NET Web 應用程序
症狀
當您在 Microsoft Visual Studio .NET 中調試 ASP.NET 應用程序時,可能會顯示下面的 Microsoft 開發環境錯誤信息:
Error while trying to run project:Unable to start debugging on the web server.The server does not support debugging of ASP.NET or ATL Server applications.Run setup to install the Visual Studio .NET server components.If setup has been run, verify that a valid URL has been specified.
You may also want to refer to the ASP.NET and ATL Server debugging topic in the online documentation.Would you like to disable future attempts to debug ASP.NET pages for this project?
原因
如果 Microsoft .NET Framework 設置或安裝沒有正確完成,則可能發生此錯誤。發生此錯誤時,在 Microsoft Internet 信息服務 (IIS) 中不會正確配置 ASP.NET 文件擴展名(例如 .aspx)的應用程序映射。
若要檢查應用程序映射是否正確,請按照下列步驟操作:
1 單擊開始,指向程序,指向管理工具,然後單擊 Internet 服務管理器。
2 展開對應於本地主機(計算機名)的節點,然後展開默認 Web 站點節點。
3 右鍵單擊 Web 應用程序目錄,然後單擊屬性。
4 在目錄選項卡上的應用程序設置下,單擊配置。
5 單擊應用程序映射選項卡。
6 在應用程序映射選項卡的應用程序映射下,檢查 .aspx 擴展名是否映射到以下動態鏈接庫 (DLL):
C:/Windows Directory/Microsoft.Net/Framework/v1.0.3705/aspnet_isapi.dll
備註:必須用您的系統的正確目錄替代此路徑中的 Windows Directory。
7 如果未找到應用程序映射條目,請遵循"解決辦法"一節中的步驟執行。
解決方案
若要解決此問題,請使用 Aspnet_regiis.exe 管理實用工具,該實用工具在單個計算機上管理多個版本的 ASP.NET 的安裝和卸載。
若要使用 Aspnet_regiis.exe 實用工具,請遵循以下步驟:
1 單擊開始,然後單擊運行。
2 在打開框中鍵入 cmd,然後單擊確定以打開命令提示。
3 在命令提示處,鍵入 cd 命令以更改爲以下目錄:
C:/Windows Directory/Microsoft.Net/Framework/v1.0.3705
4 鍵入 aspnet_regiis -i 以正確配置所需的應用程序映射。
Error while trying to run project:Unable to start debugging on the web server.Access is denied.Would you like to disable future attempts to debug ASP.NET pages for this project?
請驗證您是計算機上"管理員"組和"調試器用戶"組的成員。非管理員不具有調試 ASP.NET 輔助進程 (Aspnet_wp.exe) 的正確權限。
------------------------
4.
一個提交頁面,我用RequiredFieldValidator控制TextBox不能爲空,在本地的時候一切正常,但是今天上傳到服務器上卻出現問題,點擊提交按鈕,什麼都沒有驗證,直接就到達了所符合的頁面,後來,朋友讓我把aspnet_client上傳到服務器文件的根目錄下面,則當textbox爲空的時候,點擊提交按鈕的時候,也可以提示爲空,但是當textbox不爲空的時候,點擊提交按鈕,則什麼反應都沒有,就好像是按鈕事件丟失一樣!!
看看服務器根目錄下有aspnet_client目錄嗎?沒有把本地的拷貝上去。
服務器上重新註冊:aspnet_regiis -i
http://blog.csdn.net/fancyf/archive/2005/08/20/459618.aspx?Pending=true
有人發帖問“aspnet_client必須放在web根目錄嗎?怎樣改變這個路徑?”
我一開始猜想這個路徑可能是硬編碼的。爲了證實一下,就打開了Reflector,試圖尋找到類似"/aspnet_client/system_web/1_1_4322/"的字符串,卻發現這個目錄的位置是可以自定義的,但是MSDN中沒有公開。相關代碼在System.Web.UI.Util.GetScriptLocation(HttpContext)中,
1internal static string GetScriptLocation(HttpContext context)
2{
3 string text1 = null;
4 IDictionary dictionary1 = (IDictionary) context.GetConfig("system.web/webControls");
5 if (dictionary1 != null)
6 {
7 text1 = (string) dictionary1["clientScriptsLocation"];
8 }
9 if (text1 == null)
10 {
11 throw new HttpException(HttpRuntime.FormatResourceString("Missing_clientScriptsLocation"));
12 }
13 if (text1.IndexOf("{0}") >= 0)
14 {
15 string text2 = "system_web";
16 string text3 = VersionInfo.IsapiVersion.Substring(0, VersionInfo.IsapiVersion.LastIndexOf(".")).Replace(".", "_");
17 text1 = string.Format(text1, text2, text3);
18 }
19 return text1;
20}
然後再machine.config中找到了默認的配置:
當然也可以在web.config中針對單個應用程序進行配置。如果要把aspnet_client目錄放在根目錄下的myweb中,那麼就在web.config文件的
標籤內加上這麼一句:
或者直接寫
就可以了。
5.http://chenglin.cnblogs.com/archive/2005/06/03/166978.aspx
配置錯誤
說明: 在處理向該請求提供服務所需的配置文件時出錯。請檢查下面的特定錯誤詳細信息並適當地修改配置文件。
分析器錯誤信息: 訪問被拒絕:“myApp”。
源錯誤:
行 256:
行 257:
行 259:
行 260:
源文件: c:/windows/microsoft.net/framework/v1.1.4322/Config/machine.config 行: 258
另外還有一個 Access denied 的錯誤說是不能訪問 C:/WINDOWS/Microsoft.NET/Framework/v1.1.4322/Temporary ASP.NET Files 下的某個目錄。產生這些錯誤的原因很多,主要的可能包括:Bin 目錄或者 Web.config 被更改以及訪問文件系統的權限不夠。
如果 Bin 目錄或者 Web.config 被更改,MSDN 網站上有文章說是因爲 Microsoft Index Services(Indexing Service) 服務在運行。詳細內容可以訪問: PRB: Access Denied Error When You Make Code Modifications with Index Services Running 。
但是另外還需要注意一些別的問題,
- 檢查 Bin 目錄的文件系統訪問權限。一般只要確保 Users 容器擁有“讀取和運行”、“列出文件夾目錄”和“讀取”的權限就可以了。
- 如果提示說不能訪問 C:/WINDOWS/Microsoft.NET/Framework/v1.1.4322/Temporary ASP.NET Files/... ,可以將 Temporary ASP.NET Files 目錄的訪問權限列表中添加 Everyone,並設置爲擁有所有的權限。然後在訪問一次此 Web 應用程序後,將 Temporary ASP.NET Files 目錄的訪問權限列表中將 Everyone 刪除就可以了。
綜上所述的方法,主要包括:
- 禁用或設置 Indexing Service 服務;
- 檢查 Bin 目錄的訪問權限;
- 設置 Temporary ASP.NET Files 目錄的訪問權限。
10. “/EnterPrise”應用程序中的服務器錯誤。
--------------------------------------------------------------------------------
從客戶端(content="...管理器,右擊解決方案添加新建...")中檢測到有潛在危險的 Request.Form 值。
解決辦法: web.config中加入
或
前一個作用於所有項目中文件,後者僅僅作用於本頁面.
11ASP.NET 未被授權訪問所請求的資源。請考慮授予 ASP.NET 請求標識訪問此資源的權限。ASP.NET 有一個在應用程序沒有模擬時使用的基進程標識(通常,在 IIS 5 上爲 {MACHINE}/ASPNET,在 IIS
6 上爲網絡服務)。如果應用程序正在通過 模擬,則標識將爲匿名用戶(通常爲IUSR_MACHINENAME)或經過身份驗證的請求用戶。
由於在iis 6.0中,默認的應用程序池中的標示用的是Network Service,所以在進程中是使用Network Service這個帳號運行來運行w3wp.exe進程,而當我們在運行VS 2003的時候是需要對D:/WINDOWS/Microsoft.NET/Framework/v1.1.4322/Temporary
ASP.NET Files/目錄下進行讀寫操作的,所以看了一下該文件夾,發現沒有Network Service,添加上該賬號,同時選上FULL CONTROL,問題解決,但是至於爲什麼會產生這個問題我不大清楚,因爲在安裝WINDOWS 2003的時候,Network Service賬號是存在於Temporary ASP.NET Files該文件夾安全列表中的。
順便提一下,在IIS6.0中的默認應用程序池-->屬性-->標示中把Net Service改成Local System該問題也可以解決