环境:VS2010
操作:添加了ScriptManager和UpdatePanel
错误提示:未知的服务器标记“asp:ScriptManager”
首先去问度娘,得到的说法是web.config没有配置好,解决是在web.config中增加
<pages> <controls> <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/> </controls> </pages>
添加后运行又出现了:
命名空间“System.Web.UI”中不存在类型或命名空间名称“ScriptManager”(是缺少程序集引用吗?)
于是更改web.config为:
<?xml version="1.0"?> <configuration> <system.web> <pages> <controls> <!--注册控件--> <add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/> </controls> </pages> <compilation debug="true"> <assemblies> <!-- 引用程序集,这里引用的是 .Net3.5 版本,如果运行环境未装3.5,则需要将相关 dll 文件复制到程序 bin 目录 --> <add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> <add assembly="System.Web.Extensions.Design, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/> </assemblies> </compilation> </system.web> </configuration>
将System.Web.Extensions.dll 和 System.Web.Extensions.Design.dll 从C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.5复制到C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0中,右键项目,在引用中浏览到它们并添加,然后重启VS2010。
OK,成功!