c#

位置:IT落伍者 >> c# >> 浏览文章

Visual Studio 2010编译Web项目的小BUG


发布日期:2024年06月11日
 
Visual Studio 2010编译Web项目的小BUG
今天用Visual Studio 编译的Web项目搞得头昏脑胀…昨天刚刚表扬了一下Visual Studio 今天恨不得拿起它狠狠砸一下

明明是可以正常运行的ascx控件编译时却出现错误

Circular file references are not allowed

提示的错误位置

<%@ Register Src=~/Controls/RightSide/AdRigthascx TagPrefix=Home TagName=AdRigth %> 明明是正常可以调用的WebService编译时却出现错误

UserService does not contain a definition for GetUserByUserId

在IIS中可以正常运行单个文件编译也没问题整个站点一编译就出现上面的错误

被这个问题折腾了几个小时差点放弃解决这个问题最后坚持了一下找到了解决方法

在nfig的<compilation>中加上batch=false

<compilation debug=true targetFramework= batch=false></compilation> batch=false的意思就是将每个需要编译的文件编译为单独的dll也就是一个文件对应一个dll相当于预编译aspnet_compiler fixednames

使用这种方式进行编译没有任何编译错误Visual Studio Build succeeded

但使用batch=false有个问题就是第一次编译很慢而且Visual Studio 不显示编译进度提示状态栏一直显示Ready…等啊等…然后就Build succeeded

原来的默认设置batch=true就是为了提高编译速度将文件编译在一个dll中

现在只能无奈地选择batch=false

上一篇:C#编程轻松实现对文件的操作技巧

下一篇:.net编程之路(四)