1.「/MMTest」應用程序中的服務器錯誤。 web
--------------------------------------------------------------------------------sql
對於不返回任何鍵列信息的 SelectCommand 不支持 UpdateCommand 的動態 SQL 生成。
說明: 執行當前 Web 請求期間,出現未處理的異常。請檢查堆棧跟蹤信息,以瞭解有關該錯
誤以及代碼中致使錯誤的出處的詳細信息。 數據庫
異常詳細信息: System.InvalidOperationException: 對於不返回任何鍵列信息的 SelectCommand 不支持 UpdateCommand 的動態 SQL 生成。 windows
源錯誤: api
行 156: public void builderEditClose()
行 157: {
行 158: ada.Update(ds);
行 159: Close();
行 160: ds.Clear(); 安全
而後就是最後的更新,固然是用DataAdapter的Update()方法藉助CommandBuilder來實現,要注意的是,若是你的數據庫一開始沒有定義主鍵,那進行更新的時候會出錯,返回的錯誤將是「對於不返回任何鍵列信息的 SelectCommand 不支持 UpdateCommand 的動態 SQL 生成。」這是由於咱們用的Update()其實是經過CommandBuilder動態生成sql語句,而後才進行的數據庫操做。但若是你在一開始建立DataAdapter時的那個sql語句沒有包含有主鍵的列的話,那CommandBuilder將不會發生做用。這一點是必需要牢記的。 服務器
2. 網絡
說明: 執行當前 Web 請求期間,出現未處理的異常。請檢查堆棧跟蹤信息,以瞭解有關該錯誤以及代碼中致使錯誤的出處的詳細信息。 併發
異常詳細信息: System.Data.OleDb.OleDbException: 操做必須使用一個可更新的查詢。app
而後就是最後的更新,固然是用DataAdapter的Update()方法藉助CommandBuilder來實現,要注意的是,返回的錯誤將是「對於不返回任何鍵列信息的 SelectCommand 不支持 UpdateCommand 的動態 SQL 生成。」這是由於咱們用的Update()其實是經過CommandBuilder動態生成sql語句,而後才進行的數據庫操做。這一點是必需要牢記的。 2.
源錯誤:
執行當前 Web 請求期間生成了未處理的異常。可使用下面的異常堆棧跟蹤信息肯定有關異常緣由和發生位置的信息。
堆棧跟蹤:
出現這個錯誤 確定是數據庫的緣由
1。查看數據庫是否爲只讀
2. 數據庫所在文件夾 是否有可寫權限
3。查看你的語句是否有問題
4。如有時候有,有時候沒有,通常爲數據庫併發訪問鎖表適成的,檢查對數據庫的訪問,保證每次對數據庫操做結束後關閉鏈接
總之 你必須總結出何時報錯 是全部時候仍是操做某個表的時候
------------------------------
3
From: http://www.netyi.net/zxjcs.asp?id=125
1、 調試 ASP.NET 應用程序時出現"未將項目配置爲進行調試"的錯誤信息
症狀
當您在 Visual Studio .NET 中調試 ASP.NET 應用程序時,可能會出現下面的錯誤信息:
Error while trying to run project: Unable to start debugging on the web server. The project is not configured to be debugged
For ASP.NET projects, verify that you have a valid project file called "Web.config" for the URL specified and "debug" is set to "true" in that file.
For ATL Server projects, verify that the "DEBUG" verb is associated with your ISAPI extension.
Would you like to disable future attempts to debug ASP.NET pages for this project?
緣由
出現此錯誤主要是由於下列緣由:
ASP.NET 應用程序沒有 Web.Config 文件。
"Internet 服務管理器"中當前項目文件夾的執行許可屬性設置爲了無。
解決方案
若要解決此問題,請根據您的具體環境,使用如下方法之一:
若是您的項目沒有 Web.config 文件,則向包含該 ASP.NET 應用程序的目錄添加一個 Web.config 文件。若是您是在 Visual Studio .NET 中工做,則用右鍵單擊"項目資源管理器"中的項目,單擊添加新項,而後單擊 Web 配置文件。
若是您的項目已經有了 Web.config 文件,並且該 Web.config 文件的"編譯"部分中 debug 屬性設置爲了 true ,則請按照下列步驟設置該項目文件夾的執行許可屬性:
1 啓動"Internet 服務管理器",而後單擊要嘗試進行調試的項目。
2 右鍵單擊該項目,而後單擊屬性。
3 單擊目錄選項卡。
4 若是在執行許可列表中選擇了無,則單擊"僅顯示腳本"而後單擊應用。
2、在發送調試 HTTP 請求時出現"沒法啓動調試"的錯誤信息
症狀
當您在 Visual Studio .NET 中調試 ASP.NET 應用程序時,可能會出現下面的錯誤信息:
Error while trying to run project:Unable to start debugging on the web server.Server-side error occurred on sending debug HTTP request.
Make sure the server is operating correctly.Make sure the server is operating correctly.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?
緣由
若是 ASP.NET 應用程序的 Web.config 文件中有語法錯誤,就會發生此問題。
解決方案
若要解決此問題,要確保 Web.config 文件中的可擴展標記語言 (XML) 有效且格式正確。此外,還要記住 Web.config 中的一切字符都是區分大小寫的。
3、調試 ASP.NET 應用程序時出現"訪問被拒絕。請檢查計算機調試管理器的 DCOM 配置設置。"的錯誤信息
症狀
當您在 Visual Studio .NET 中遠程調試 ASP.NET 應用程序時,可能會出現下面的錯誤信息:
Error while trying to run project:Unable to start debugging on the web server.Access is denied.Check the DCOM configuration settings for the machine debug manager.Would you like to disable future attempts to debug ASP.NET pages for this project?
緣由
之因此會發生此錯誤是由於試圖進行遠程調試的用戶不是 Microsoft Internet Information Server (IIS) 服務器上"調試器用戶"組的成員。
解決方案
若要將適當的用戶添加到"調試器用戶"組中,請在 Web 服務器上按照下列步驟操做:
1 從 Windows 開始菜單中,指向程序,指向管理工具,而後單擊計算機管理。
2 在左窗格中,單擊以展開計算機管理,系統工具和本地用戶和組節點。
3 單擊組,而後雙擊調試器用戶。
4 在調試器用戶屬性對話框中,單擊添加。
5 在選擇用戶或組對話框中,選擇適當的用戶,而後單擊肯定。
6 單擊肯定退出調試器用戶屬性對話框。
7 關閉"計算機管理"資源管理器。
4、調試 ASP.NET 應用程序時出現"沒法在 Web 服務器上啓動調試"的錯誤信息
症狀
當您在 Visual Studio .NET 中調試 ASP.NET 應用程序時,可能會出現下面的錯誤信息:
Error while trying to run project:Unable to start debugging on the web server.Would you like to disable future attempts to debug ASP.NET pages for this project?
緣由
之因此發生此錯誤是由於 Microsoft Internet Information Server (IIS) 未運行或者運行不正常。
解決方案
若要解決此問題,必須從新啓動 IIS。爲此,請在命令提示符處鍵入 iisreset。
5、調試 ASP.NET 頁時 Visual Studio .NET 調試器不在斷點中止
症狀
在 Visual Studio .NET 中調試 ASP.NET 應用程序時,調試器可能不在斷點處中止。
緣由
之因此會發生此問題,是由於在應用程序中未啓用 ASP.NET 調試。
解決方案
若要解決此問題,請在 Visual Studio .NET 中按照下列步驟操做:
1 在"解決方案資源管理器"中,選擇項目名稱。
2 在項目菜單中,單擊屬性。
3 單擊以展開配置屬性節點。
4 在調試下的啓用 ASP.NET 調試列表中,單擊 True。
6、沒法調試 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
調試權限不夠
Try:
根據設計,ASP.NET 要求對根 Web 站點上或任何虛擬目錄上的 ASPNET 賬戶(Aspnet_wp.exe 進程賬戶)具備讀取、執行和列出訪問權限。這是必需的,以便 ASP.NET 能夠訪問內容文件並能夠監視文件更改。
解決方案
若要爲根 Web 站點上或任何虛擬目錄上的 ASPNET 賬戶添加讀取、執行和列出訪問權限,請執行如下步驟:
在 Windows 資源管理器中,瀏覽到包含根 Web 站點(默認狀況下是 C:\Inetpub\Wwwroot)或虛擬目錄的文件夾。
右鍵單擊該文件夾,而後單擊屬性。
在安全性選項卡上,單擊添加。
鍵入計算機名\ASPNET(例如,在名爲 Webdev 的計算機上,鍵入 Webdev\ASPNET),而後單擊肯定。
容許如下 ASPNET 賬戶權限:
讀取並執行
列出文件夾內容
讀取
單擊肯定以關閉屬性對話框並保存所作更改。
備註:若是 Everyone 組或用戶組已具備對根 Web 站點或虛擬目錄的讀取訪問權限,則無需執行這些步驟。
-------
添加 IUSR_YouComputerName 和ASPNET 這兩個用戶對 C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files\webapplication1dd84b00\b065eec7目錄的訪問權限,設置爲徹底訪問,
--------
將 asp.net 用戶(具體是什麼記不太清楚了:< 能夠到「安全性--用戶/用戶組」中查看)對目錄
C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary ASP.NET Files
的權限改成可寫或更高便可。
13System.Reflection.TargetInvocationException: 調用的目標發生了異常。 ---> System.UnauthorizedAccessException: 拒絕訪問。 --- 內部異常堆棧跟蹤的結尾 --- at System.RuntimeType.InvokeDispMethod(String name, BindingFlags invokeAttr, Object target, Object[] args, Boolean[] byrefModifiers, Int32 culture, String[] namedParameters) at System.RuntimeType.InvokeMember(String name, BindingFlags invokeAttr, Binder binder, Object target, Object[] args, ParameterModifier[] modifiers, CultureInfo culture, String[] namedParameters) at System.Type.InvokeMember(String name, BindingFlags invokeAttr, Binder binder, Object target, Object[] args) at System.DirectoryServices.DirectoryEntry.Invoke(String methodName, Object[] args) at aspnetc.pubFunction.IISManager.Create(VirtualDirectory newdir) in f:\ziliao1\aspc\pubfunction\iismanager.cs:line 132
若是是在asp.net 下使用的話,要記得在 中添加
不然就會出現 「異常詳細信息: System.UnauthorizedAccessException: 拒絕訪問「。
iis訪問站點時出現輸入用戶名和密碼
1.iis->站點->屬性->目錄安全性->身份驗證和訪問控制->啓用匿名訪問
2.不知你有沒有添加這"IUSR_yourname"INTERNET 來賓帳戶!如沒有添加就應該是這個問題所引發.
(在"默認網站---屬性-----目錄安全性-----編輯------瀏覽-----高級-----當即查找"便可找到本帳戶,雙擊添加便可)
3.把你網站文件所在的目錄的,全權改爲 everyone 再試一下先. 樓上們 所說的通常狀況下默認是不會錯的.
4把iis目錄所在的文件夾權限加iuser_機器名
"Visual Studio .NET已檢測到指定的Web服務器運行的不是ASP.NET 1.1 版..."的解決辦法 選擇自 great_domino 的 Blog
關鍵字 "Visual Studio .NET已檢測到指定的Web服務器運行的不是ASP.NET 1.1 版..."的解決辦法
出處
昨天同事MM在調試一臺裝有.NET WEB服務器又出現了"Visual Studio .NET已檢測到指定的Web服務器運行的不是ASP.NET 1.1 版.."的錯誤,叫我去幫忙搞,搞了半天,才搞定,究竟是什麼問題
原來她將IIS中"默認web站點"刪除,本身新建了一個站點,運行正常,就是沒法編譯,新建也不成,出現非1.1版本錯誤,之前出現錯誤是由於,服務器使用了固定IP,而管理員將屬性中的IP地址爲指定的ip地址!如今也頗有必要作個總結!
步驟嘗試以下:
1.固然先肯定一下,是否真的裝了1.1的版本,查看路徑 C:\WINNT\Microsoft.NET\Framework\v1.1.4322
2.也是不少人都知道,從新安裝 aspnet_regiis ,怎麼安裝,就很少說了,網上不少!
3.重啓IIS,從新啓動ASP.NET服務程序
4.若是你的Web服務器使用了固定IP:肯定你的"Internet信息服務"中使用的是"默認web站點"而且其屬性中的IP地址爲"(所有未分配)",而不是你己指定的ip地址。能夠修改"默認web站點"的名字,但不要刪除,一旦刪除,只要在新建的時候,名稱嚴格爲"默認web站點"也能夠恢復
5.若是你的IE使用了代理的話,把 Bypass Proxy Server for local adresses勾上
6.若是你自己已經有個web站點,請把它卸載掉,不用從新安裝vs.net,只要從新安裝下iis也能夠。
7.若是仍是不行,那可真沒什麼辦法了,那就重裝IIS,FRAMWORK,.NET,操做系統吧
最後說一個安全問題,儘可能不要把IIS指向默認路徑C:\Inetpub\wwwroot 這個路徑很容易受攻擊,最好從新指向一個新的路徑,而後把wwwroot文件夾刪除掉,須要用戶上傳文件的,千萬要阻止上傳".HTA"文件,作好訪問網站的權限,屏蔽執行HTA文件,作好數據庫備份工做!
又是工做中的一點經驗,供你們參考,少走彎路!
確實是Bug
1.你的Web服務器使用了固定IP:肯定你的"Internet信息服務"中使用的是"默認web站點"而且其屬性中的IP地址爲"(所有未分配)",而不是你己指定的ip地址。而後在回到VS.NET中重試,或許能夠解決。
2.以上方法不能解決問題時,考慮MSDN中的解決辦法,以下:
Visual Studio .NET 沒法肯定在 Web 服務器計算機上運行的是否爲 ASP.NET 1.1 版。該錯誤可能在幾種不一樣狀況下發生。請檢查是否屬於如下狀況:
a, 確保 .NET Framework 1.1 版安裝在 Web 服務器計算機上。有關詳細信息,請參見 Visual Studio .NET 軟件要求。
b, 若是 ASP.NET 已安裝在 Web 服務器計算機上,但仍然遇到此錯誤,則多是配置問題。爲了糾正有問題的安裝或配置,可使用名爲 aspnet_regiis 的 ASP.NET 實用工具。在相似以下所示的路徑中能夠找到此命令行實用工具:
C:\WINDOWS\Microsoft.NET\Framework\v1.1.nnnn\
其中 nnnn 表示四位內部版本號。在最高版本號下查找。使用 /i 開關運行該實用工具:
aspnet_regiis /i
提示 您能夠從命令的正確目錄中直接打開該命令窗口。從 Windows 的"開始"菜單,指向"程序"、"Visual Studio .NET 2003"、"Visual Studio .NET 工具",而後選擇"Visual Studio .NET 命令提示"。在窗口打開後,鍵入 aspnet_regiis /i。
不須要吧,在程序的vs.net的vs.net tool 的 vs.net command prompt下
輸入:
aspnet_regiis -r
問題就能夠解決了。
仔細的看看 aspnet_regiis 的參數的意義
查詢參數 aspnet_regiis /all
會列出全部的參數
---------------------------------------------
一、當站點主目錄沒有建立應用程序:
經過FP擴展+虛擬目錄的方式來創建WEBAPP,步驟以下:
(1)、右擊站點---全部任務--配置服務器擴展
(2)、創建虛擬目錄***,並使其配置應用程序
(3)、在VS中創建WEB項目,名稱也爲***
(4)、經過經過FP擴展來創建WEB
二、當站點主目錄建立應用程序:
第一種方法--FP擴展:
(1)、右擊站點---全部任務--配置服務器擴展
(2)、在VS中創建WEB項目,名稱本身隨便定
(3)、經過經過FP擴展來創建WEB
第二種方法--WEB共享:
(1)在IIS中將IP地址改成所有未分配
(2)將地址改成127.0.0.1或LOCALHOST
三、還不能創建時請試用下列方法:
(1)「站點」---右鍵---「屬性」---「全部任務」---「從新計算 Web 上的超連接」
而後在vs.net下經過frontpage服務器擴展建立
(2)指示要經過文件共享直接訪問 Web 服務器上的項目文件;不須要在該服務器上安裝 FrontPage 服務器擴展。
安裝 Visual Studio .NET 時,將建立一個「VS Developers」(VS 開發人員)用戶組,並授予該用戶組對 inetpub\wwwroot 文件夾的讀/寫權限。想使用計算機上的文件共享建立 Web 項目的任何用戶都須要添加到「VS Developers」(VS 開發人員)用戶組中。新建的「VS Developers」(VS 開發人員)組沒有任何成員,因此,即便是安裝 Visual Studio 的用戶,也必須手動將本身添加到這個組中。
若是不但願將 Visual Studio 安裝到服務器上,能夠經過 Visual Studio 安裝程序僅安裝服務器組件,以建立「VS Developers」(VS 開發人員)組。
(3)win2003下:
在VS.NET中,爲了測試URL和UNC, VS.NET會在目錄下面生成一個.tmp文件,而後經過HTTP對該文件發出請求。可是在IIS 6中,出於安全考慮,tmp文件沒有註冊,默認狀況下,會被block而後產生HTTP 404錯誤。
解決這個問題,請您參閱下面的方法:
1。打開IIS管理器。
2。右鍵點擊"Default Web Site"並選擇Properties.
3。 點擊"Http Header".
4。 點擊"MIME Types".
5。 點擊「New」。
6。 在Extension中,輸入".tmp". (不須要引號)
7。 在MIME Type中,輸入 "Temp". (不須要引號)
還有一種解決方法,您可使用下面的命令行:
%systemdrive%\inetpub\adminscripts\adsutil.vbs set w3svc/1/root/MimeMap .tmp,temp
在建立Web Application時,VS.Net須要在建立路徑下建立後綴名爲.tmp的臨時文件。
當VS.Net建立好項目以後,就會以HTTP的方式向Web文件夾尋求項目文件,同時也尋求臨時文件。因爲windows2003在某些安裝步驟下的IIS沒有把.tmp文件設置爲MIME類型,因此IIS向VS.Net返回了未知文件類型的錯誤,即找不到文件。因此VS.Net認爲你的IIS路徑設置不對。
未指定的錯誤
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.Runtime.InteropServices.COMException: 未指定的錯誤
試圖運行項目時出錯:沒法在 WEB 服務器上啓動調試。您沒有調試該服務器的權限。
驗證您是服務器上「Debugger Users」組的成員。
1.做爲 Administrator 登陸。
2.運行 Administrator tools 中的 Computer management。
3.選擇 Local users and groups\groups 節點。
4.雙擊右邊窗格中的 Debugger Users 組。
5.單擊 Debugger users properties 對話框中的 Add 按鈕。
6. 鍵入用戶賬戶並單擊 OK。
設備未就緒。
說明: 執行當前 Web 請求期間,出現未處理的異常。請檢查堆棧跟蹤信息,以瞭解有關該錯誤以及代碼中致使錯誤的出處的詳細信息。
異常詳細信息: System.IO.IOException: 設備未就緒。
posted on 2006-03-23 11:15 DotNet菜園 閱讀(1843) 評論(1) 編輯 收藏 引用 收藏至365Key 所屬分類: AspNet
Feedback
# re: (轉帖)asp.net調試錯誤解決方法收集(1) 2006-04-10 17:58 21
private void PrepareConnection()
{
string ConnStr=System.Configuration.ConfigurationSettings.AppSettings["ConnectionSqlServer"];
connection=new SqlConnection(ConnStr);
string strSql="select * from Questions";
command = connection.CreateCommand();
command.CommandText= strSql;
command.CommandType=CommandType.Text;
adapter= new SqlDataAdapter();
adapter.SelectCommand = command;
commandBuilder = new SqlCommandBuilder(adapter);
adapter.UpdateCommand=commandBuilder.GetUpdateCommand();
adapter.DeleteCommand=commandBuilder.GetDeleteCommand();
adapter.InsertCommand=commandBuilder.GetInsertCommand();
}
爲何出現:
對於不返回任何鍵列信息的 SelectCommand 不支持 UpdateCommand 的動態 SQL 生成。
說明: 執行當前 Web 請求期間,出現未處理的異常。請檢查堆棧跟蹤信息,以瞭解有關該錯誤以及代碼中致使錯誤的出處的詳細信息。
異常詳細信息: System.InvalidOperationException: 對於不返回任何鍵列信息的 SelectCommand 不支持 UpdateCommand 的動態 SQL 生成。
源錯誤:
行 39: adapter.SelectCommand = command;
行 40: commandBuilder = new SqlCommandBuilder(adapter);
行 41: adapter.UpdateCommand=commandBuilder.GetUpdateCommand();
行 42: adapter.DeleteCommand=commandBuilder.GetDeleteCommand();
行 43: adapter.InsertCommand=commandBuilder.GetInsertCommand();
配置錯誤
說明: 在處理向該請求提供服務所需的配置文件時出錯。請檢查下面的特定錯誤詳細信息並適當地修改配置文件。
分析器錯誤信息: 訪問被拒絕:「myApp」。
源錯誤:
行 256:
行 257:
行 258:
行 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該問題也能夠解決
12「/WebApplication1」應用程序中的服務器錯誤。
--------------------------------------------------------------------------------對路徑「D:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary asp.net Files\webapplication180d7be\b46d84c0」的訪問被拒絕。
說明: 執行當前 Web 請求期間,出現未處理的異常。請檢查堆棧跟蹤信息,以瞭解有關該錯誤以及代碼中致使錯誤的出處的詳細信息。
異常詳細信息: System.UnauthorizedAccessException: 對路徑「D:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary asp.net Files\webapplication180d7be\b46d84c0」的訪問被拒絕。
asp.net 未被受權訪問所請求的資源。請考慮授予 asp.net 請求標識訪問此資源的權限。ASP.NET 有一個在應用程序沒有模擬時使用的基進程標識(一般,在 IIS 5 上爲 {MACHINE}\ASPNET,在 IIS 6 上爲網絡服務)。若是應用程序正在經過 模擬,則標識將爲匿名用戶(一般爲 IUSR_MACHINENAME)或通過身份驗證的請求用戶。
若要授予 asp.net 對文件的寫訪問權,請在資源管理器中右擊該文件,選擇「屬性」,而後選擇「安全」選項卡。單擊「添加」添加適當的用戶或組。突出顯示 asp.net 賬戶,選中所需訪問權限對應的框。