今天早晨调试一个程序时,便宜过程出现外部组件发生异常错误,因为该错误无错误行号等信息,一时竟不知道错误来自哪里,只好求助网络,搜索后发现下面提示:
今天一个 ASP.NET 程序编译时发生错误:
外部组件发生异常。
但是并没有对应的详细信息,和错误的行号等信息,很难排查。
经过一段时间的检查,发现原因出在一个 User Control 后台代码中的引用不知何故写成了:
using System.Windows.Forms;
这样该 UserControl 的页面基类就变成了 System.Windows.Forms.UserControl. 奇怪的是,用 "Build Page" 对该用户控件进行编译时,竟提示成功。而编译整个网站则出错。
上述错误信息中的“外部组件”应该是从引用了该用户控件的页面角度而言的,对他来说这个用户控件就是“外部组件”。
看过上面后,虽然跟我的并不相符,因为我并没有修改用户控件,昨天还好好的呢,但是也给了些提示,从用户控件入手,因为本人的主要控件有几个,但是很多的页面都引用了, 无从下手,于是,把一部分页面剪切走,剩下只有很少用户控减的页面,在分别执行,然后在逐步添加回剪切走的页面,最后发现当某一个控件出现时候该问题再次出现,于是打开该用户控件,找毛病,可是一样,都是没进行过任何修改过的,于是,一部分注释掉,找出问题的那部分,最后奇怪的是 当把注释的部分都还原后,一切都正常了,所有被剪切走的也面放回来后也都正常了,
虽然问题糊里糊涂的解决了,可也算是给自己,以后遇到此类问题的解决方向也有点提示吧,至于为啥不做任何修改问题解决,还望高手解释.
接上面,正当以为问题解决的时候这个错误象幽灵一个再次出现,修改如下:
1.两个用户控件名字一样,虽然路径不同,,
2.发现注释掉几个也面和其中一个类后错误不再出现,经过检查该类,发现该类引用了web.config中几个<add key="" value="" />,而这些东西在web.config中是尚未建立的,这样,就好解决了,建立上着几个,把注释的也面注释去掉,
然后重新编译,问题解决.
可见,该问题是用户控件有问题、引用了没有的东西或者引用了别人的东西,而该东西不存在等原因造成
石家庄网站建设的优点:我们是专属定制,制作符合您公司业务、风格的网站,这就做到给您制作的网站是网络上独一无二的网站,这样更有利于搜索引擎的收录。如果您喜欢网络上某个风格的网站或者网站模板,我们是只仿制而不直接套用,我们会对其中的结构和样式做增减优化,做…
竞价排名营销是一种通过 竞价购买搜索引擎中关键词或关键短语的广告方式。竞价排名营销分为两种类型。 第一种,直接为真正的搜索引擎结果的排名付费,也就是说付的钱越多,网页所获得的排名名也就越高。 第二种则更类似于普通的广告。这种竞价排名营销方式通过…
网站优化对网站来说是非常重要的,直接决定和影响着网站所起到的作用,以及在各个地方当中的排名。在进行seo优化的过程中,我们必须要坚持一定的原则,真正的把这些事情做得更好,才可以确保最终的结果,这对于我们来说是非常重要的事。 SEO优化主要分为8小步: …