Asp.net 不允许循环文件引用Dnn 7+;在2013年TFS中

Asp.net 不允许循环文件引用Dnn 7+;在2013年TFS中,asp.net,visual-studio-2013,dotnetnuke,Asp.net,Visual Studio 2013,Dotnetnuke,我将DNN7.3用于一个网站项目,它是VB和C代码的组合。我使用visual studio 2013构建该项目。 如果将属性页中的MSBuid选项配置为允许此预编译站点可更新,并且项目已发布。 将会有一个成功的建筑。但当它签入TFS时,将引发以下异常: /compiled/DesktopModules/Admin/Security/manageusers.ascx (8): Circular file references are not allowed. /compiled/Desktop

我将DNN7.3用于一个网站项目,它是VB和C代码的组合。我使用visual studio 2013构建该项目。 如果将属性页中的MSBuid选项配置为允许此预编译站点可更新,并且项目已发布。 将会有一个成功的建筑。但当它签入TFS时,将引发以下异常:

 /compiled/DesktopModules/Admin/Security/manageusers.ascx (8): Circular file references are not allowed.
 /compiled/DesktopModules/Admin/Security/manageusers.ascx (67): Unknown server tag 'dnn:profile'.
 /compiled/DesktopModules/Admin/Security/EditUser.ascx (5): Circular file references are not allowed.
 /compiled/DesktopModules/Admin/Security/EditUser.ascx (163): Unknown server tag 'dnn:Profile'.
 /compiled/admin/Users/ViewProfile.ascx (4): Unknown server tag 'dnn:Profile'.
此外,当我选中“使用固定命名和单页程序集”时,请允许此预编译站点可更新。它将抛出:

ASPNETCOMPILER: Object reference not set to an instance of an object.
当我在网上搜索时,有两种选择

我试过这两种方法,但仍然有相同的错误。 我不知道我做错了什么

请查看[此处]()以了解为什么您会看到此错误,简单地说,如果您有以下设置:

/folder1/Control1.ascx > References Control2
/folder2/Control2.ascx > References Control3
/folder1/Control3.ascx
这意味着folder1 dll将引用folder2 dll,后者将再次引用folder1 dll,从而导致“循环文件引用”

解决方案是尝试重新排列每个文件夹下的所有控件,有时,您必须将一个有问题的用户控件复制到多个文件夹中,以防止此类循环调用。

请查看[此处]()以了解如果您有以下设置,您会看到此错误的原因:

/folder1/Control1.ascx > References Control2
/folder2/Control2.ascx > References Control3
/folder1/Control3.ascx
这意味着folder1 dll将引用folder2 dll,后者将再次引用folder1 dll,从而导致“循环文件引用”


解决方案是尝试重新排列每个文件夹下的所有控件,有时,您必须将有问题的用户控件复制到多个文件夹中,以防止此类循环调用。

我将TFS Build Process Parameters的Clean WorkSpace属性更改为false。
错误刚刚消失,我能够成功地构建到TFS Drop文件夹中。我不知道为什么这样可以解决问题,但问题已经解决。

我将TFS Build Process Parameters的Clean WorkSpace属性更改为false。 错误刚刚消失,我能够成功地构建到TFS Drop文件夹中。我不知道这为什么能解决问题,但问题已经解决了