将网站项目从.NET 2.0升级到4.5.2:缺少ScriptManager,ScriptService,ScriptMethod

时间:2017-06-07 21:59:14

标签: asp.net-ajax .net-4.5

尝试将VB中的.NET 2.0网站项目升级到4.5.2并且错误地编译了

BC30002 Type 'ScriptManager' is not defined.
BC30002 Type 'System.Web.Script.Services.ScriptMethod' is not defined.
BC30002 Type 'System.Web.Script.Services.ScriptService' is not defined.

尝试了Import System.Web.UI,但它没有用,并且警告说导入是不必要的。与System.Web.Extensions相同。

第一个错误发生在该行:

Public ReadOnly Property ScriptManagerObject() As ScriptManager
    Get
        Return Me.ScriptManager1
    End Get
End Property

该成员在ASPX中定义为

<asp:ScriptManager ID="ScriptManager1" runat="server">
    <Services>
        <asp:ServiceReference Path="AutoComplete.asmx" />
    </Services>
</asp:ScriptManager>

如何将编译器指向ScriptManager等的正确名称空间?

修改

尝试将此行添加到ASPX页面:

<%@ Register TagPrefix="asp" Namespace="System.Web.UI" Assembly="System.Web"%>

没用。

尝试为4.0框架添加对System.Web.Extensions的引用。没用。

尝试从ASPX中删除ScriptManager1对象,并以相同的名称从工具箱中重新添加它。仍然没有找到该页面的成员。我们怎样才能解开这个谜团?

1 个答案:

答案 0 :(得分:1)

这就是答案:https://stackoverflow.com/a/19128973/2721750 恢复到3.5并重复升级到4.5.2 显然它会对web.config进行更多更改,并包含更多的程序集引用,其中一些可能在初始升级时被遗漏。