Pur*_*ome 2 asp.net debugging preprocessor tfs2010
真.奇怪的.SHIZ.
当我执行TFS Team Build(with Remote Deploy)时,我在网页上的一些#if DEBUG 预处理程序指令代码不会被调用.当我手动 one-click deploy (remote deploy)的preprocessor directive代码工作.当我在本地调试时,代码也可以工作.
所以 - 问题看起来与我的配置设置有关Build Template(我想??).所以,这就是我所拥有的: -
alt text http://img256.imageshack.us/img256/4070/59603294.png
没什么太难的.那说... 请善待编译.在'DEBUG'模式下构建我的项目(读取:项目,不是解决方案).
我的代码如下: -
#if DEBUG
Log.Debug("We are in DEBUG mode.");
#else
Log.Debug("We are _NOT_ in DEBUG mode.");
#endif
Run Code Online (Sandbox Code Playgroud)
因此,当调用此代码(在某些aspx页面中)时,它会打印出"我们处于DEBUG模式".什么时候
但不是当我让TFS的持续整合开始时.
FML.
我试图看看它是否是CASING情况(即#if debug或#if Debug),但它仍然不起作用.
然后我甚至尝试明确地告诉MSBuild配置....
替代文字http://img294.imageshack.us/img294/9970/75495143.png
仍然没有爱.
哦..但这是工友!我ALSO有一些web.config文件转换
...你能猜出哪个文件被转换了?如果你猜对所有场景的web.debug.config获胜者甚至是代码中出错的团队构建!所以它就像构建过程和工作流知道它是一个DEBUG配置.. kewl!但编译后的代码没有???
最后,改变debug="true"或debug="false"没有区别.
在我跳出这栋楼之前,有人可以帮忙吗?当我的生活中不断出现这些奇怪的屁股问题时,它会让我失望.叹
请帮忙!
注意:我不能再接受世界上最小的小提琴捐赠 - 我已经获得了很多.干杯:)
好吧,我找到了答案,但我对此并不满意.我将制作一个关于这个bug的视频并通过电子邮件发送给Vishal @ MS ......看看他的想法:)
无论如何,如果你仔细看看默认配置到处都是这个......
DEBUG | Any Cpu
替代文字http://img202.imageshack.us/img202/9196/70272059.png
没什么不寻常的......
现在,当我改变平台时AnyCpu(注意我如何移除空间......)现在它可以正常工作.
例如..
alt text http://img19.imageshack.us/img19/2548/45461348.png
是什么让我想到的是当我检查出.proj文件......这里是一个片段....
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>9.0.30729</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
... snip for brevity ...
<SccProvider>SAK</SccProvider>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
... snip for brevity ...
<DesktopBuildPackageLocation />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
... snip for brevity ...
<CodeAnalysisRuleSet>AllRules.ruleset</CodeAnalysisRuleSet>
</PropertyGroup>
Run Code Online (Sandbox Code Playgroud)
所以是啊..我修好了但是我不确定这是否可以接受或只是侥幸.我需要从MS团队得到一些真正的答案:)
| 归档时间: |
|
| 查看次数: |
925 次 |
| 最近记录: |