我有一个在本地构建的.net解决方案,但在我们的构建服务器上它无法构建,错误都是这样的:
名称空间'Foo.Bar'中不存在类型或命名空间名称'XXX'(您是否缺少程序集引用?)
我注意到的一件奇怪的事情是,当我检查使用Just Decompile在本地编译的DLL时,类型XXX存在于Foo.Bar.DLL中。当我检查在构建服务器上编译的Foo.Bar.DLL时,类型XXX不存在,实际上,在DLL中存在Foo.Bar命名空间中的非类。
在我的示例中,命名空间Foo.Bar包含所有归因于Serializable,XmlTypeAttribute和XmlRoot的类,这是否会影响MSBuild构建项目的方式?
答案 0 :(得分:0)
检查构建生成顺序。(右键单击项目,项目依赖项,构建生成顺序) 似乎带有Foo.Bar.dll引用的项目是在Foo.bar.dll之前编译的 添加FooBar作为项目的依赖关系。 它在本地编译,因为你在
之前手动编译了FooBar