Asp.net
在命名空間 System.Web.UI 中找不到 ScriptManager 和 UpdatePanel
我有一個 MVC4/Web API 項目,我創建了一個使用 Ajax 使用 Web API 的測試頁面。測試進展順利,所以我開始研究 UI。我需要做的一件事是使用從 Web API 返回的數據填充一些表單控制項。我為此使用了 JQuery。
現在,當我執行應用程序並送出表單時,我收到一個錯誤,表明頁面已更新:
Invalid postback or callback argument. Event validation is enabled using <pages enableEventValidation="true"/> in configuration or <%@ Page EnableEventValidation="true" %> in a page. For security purposes, this feature verifies that arguments to postback or callback events originate from the server control that originally rendered them. If the data is valid and expected, use the ClientScriptManager.RegisterForEventValidation method in order to register the postback or callback data for validation.為了克服這個問題,我將表單控制項包裝在 UpdatePanel 中並添加了 ScriptManager 控制項。現在我在建構時收到以下錯誤:
The type or namespace name 'ScriptManager' does not exist in the namespace 'System.Web.UI' (are you missing an assembly reference?) C:\Users\xxx\Documents\ Visual Studio 2012\Projects\xxxxxxxxx\xxxxxxxx.Web.API\Public\ xxxxxxxxxxx.aspx.designer.cs 31 41 xxxxxxxx.Web.API和
The type or namespace name 'UpdatePanel' does not exist in the namespace 'System.Web.UI' (are you missing an assembly reference?) C:\Users\xxx\Documents\ Visual Studio 2012\Projects\xxxxxxxx\xxxxxxxx.Web.API\Public\ xxxxxxxxxxx.aspx.designer.cs 40 41 xxxxxxxx.Web.API我已經完全清理了我的解決方案。刪除了 obj/Debug 和 obj/Release。我已經研究了這兩個問題,它們似乎是齊頭並進的,會出現很多問題。我已經安裝了 AjaxControlToolbox,但這並沒有什麼不同。
有什麼我必須手動添加到 web.config 或者我應該尋找的東西嗎?
我理解為什麼 Garrison 會指出 MVC/Web 表單的區別。我的 MVC 站點上有一些 .aspx 頁面,僅用於測試。
但是通過將我的項目的目標框架設置為 3.5,然後再次將其更改回 4.0,我的問題得到了解決。
添加對程序集System.Web.Extensions的引用。選擇項目-> 添加引用,然後選擇程序集名稱。