用户控件不允许循环文件引用

时间:2015-03-30 12:23:05

标签: c# asp.net web user-controls asp.net-4.0

我在三个不同的目录(Comment,Comment1,Comment2)中创建了3个用户控件 Comment.ascx Comment1.ascx Comment2.ascx

根据下面给出的参考:

Comment.ascx> Comment1.ascx Comment1.ascx> Comment2.ascx Comment2.ascx> Comment.ascx

得到错误:

 Circular file references are not allowed.

根据我设定的一些论坛

batch="false"
在网络配置文件中,但我仍然收到错误。 对此有什么解决方案吗?

2 个答案:

答案 0 :(得分:0)

您需要通过将公共代码放入可由3个用户控件使用的第四个程序集来打破循环引用链。

答案 1 :(得分:0)

this文章提及有两种方法可以解决问题,但由于性能受到影响,不建议使用batch= "false"(老实说,我不确定真实性)What is batch used for?

在我的Asp.Net网站项目中,两个或多个WebUserControl之间存在某种冲突,我有多个用户控件,它们放在多个文件夹中,所以我读了Visual Studio给我的错误信息。

它指的是用户控件的错误来源,我更改了用户控件文件位置并将其放在另一个文件夹中,然后我按ctrl + shft + B来构建项目,这次我遇到了一些错误说WebUserControl有一些不正确的地址,所以我更正了声明性地址(位于Asp页面的顶部),它是这样的:

<%@ Register Src="~/Controls/XFolder/Receiver.ascx" TagName="ReceiverProperties" TagPrefix="mdc" %>

我把它改成了这个:

<%@ Register Src="~/Controls/Receiver.ascx" TagName="ReceiverProperties" TagPrefix="mdc" %>

建立项目,这次一切都很好!

就我个人而言,我不知道添加批次是否好或坏...&#34; false&#34;自名为Asp.Net site performance secrets的{​​{3}}以来的属性建议将其应用于this part of the book