您的位置:首页 > 运维架构 > 网站架构

解决:“ScriptManager”不是已知元素。原因可能是网站中存在编译错误。

2009-09-10 09:54 330 查看
方法一:

我在工作中,将Micro的Ajax插件安装后,将ScriptManager,UpdatePanel控件拖入页面后,就会出现 “ScriptManager”不是已知元素。原因可能是网站中存在编译错误。错误提示,可是还是可以生成成功,这个问题,困惑我很长时间,终于今天在Google上,慢慢的找到了解决的方法。
由于我用的是母板页,因此,只需在母板页的HTML代码页面添加如下即可:<%@ Assembly Name="System.Web.Extensions" %>即可,也就是将Ajax的编译信息添加到页面。如果你没有用母板页,我想,应该是在代码页面上添加此代码,就可以解决问题了。

方法二:

最近老是碰到“ScriptManager”不是已知元素。原因可能是网站中存在编译错误的问题。。

这个问题还是蛮严重的:1. 一旦在视图中编辑,回来看代码就会被气死,排版全没了,代码一塌糊涂。

2. 不能智能显示相关标签了

我估计是自己使用了MasrterPage的问题。网上看到有朋友采用编辑主表和加入<@ Assembly Name="System.Web.Extensions" %>的方法,我试了试,不是很理想,可能暂时解决问题,但是一旦重新打开,问题同样还在。

难道没有别的方法了吗?突然想到为什么自己以前没碰到相关的问题呢?原来当时是采用了嵌套母版页,而为了在视图中进行编辑,利用.net 的BUG进行了一些处理。也许这个BUG在这里也有效?当即试了试,哈哈,问题解决!

在这里给大家推荐这个 BUG,实在是居家旅行,杀人放火一举两得的好 BUG:

<%@ Page Language="C#" MasterPageFile="MarsterPage.master " AutoEventWireup="true" CodeFile="default.aspx.cs" Inherits="" Title="" %>

大家看了也许会说,这个怎么叫BUG呢?秘密就在下划线显示的地方,在MarsterPage.master 后和引号之前,我加了一个小小的空格,而正是这个空格起到了决定性作用,不仅解决了嵌套母版页无法在视图中编辑的问题,也一举解决了“ScriptManager”不是已知元素的问题。

当然网页错误提示找不到ContentPlaceHolder1的错误。不过这个提示重要吗?不重要吗?到底重要吗?

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/szuwangjl/archive/2009/07/10/4338227.aspx
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐