【发布时间】:2013-11-19 10:07:10
【问题描述】:
我有一个类库,其中包含一个名为 TestService 的类。我使用 Visual Studio 的“添加 -> 类”菜单添加了它。在csproj文件中,看起来不错
<ItemGroup>
...
<Compile Include="Implementation\TestService.cs" />
...
</ItemGroup>
我在任何地方都找不到任何“排除”语句,而且它在 Visual Studio 中构建得很好。但是,在 MS Build 操作期间(在 TeamCity 上),当我使用 dotPeek 查看生成的 DLL 时,我的类不存在(并且我的构建失败)。
该类已添加到分支上,并在构建期间合并到主干中。合并的 .csproj 文件看起来不错。
我已尝试使用默认命名空间(由 VS2010 选择,与文件夹结构匹配),即“TimetablingPhase2.Service.Implementation”。同一文件夹中的所有其他类都有命名空间“TimetablingPhase2.Service,我也尝试过(另一位开发人员最初编写了此代码)。
谁能说明为什么它没有包含在我的 DLL 中?下面是添加的类的截图。
谢谢
【问题讨论】:
-
99% 的情况下,当我遇到这种情况时,我会说你看错了地方。
-
是的,不知道还能去哪里看看。我检查了所有解决方案文件、csproj 文件、删除了类、重新添加了它、删除了所有 TeamCity 缓存等、更改了命名空间作为健全性检查等。不知道现在该去哪里!
-
奇怪,我刚刚在同一个命名空间中添加了一个新类(Test.cs),现在它也在构建其他类......
-
你检查过 ActivityLogService.cs 的命名空间吗? @理查德
-
嗨@Rezoan,它的命名空间与同一文件夹中的所有其他类一致。我想知道这是否与构建操作和/或构建配置有关,但我还看不到任何明显的东西
标签: c# visual-studio-2010 msbuild teamcity