C#如何创建具有多个相同命名项目的解决方案?

时间:2015-09-15 13:59:32

标签: c# compilation

我获得的文件夹包含子文件夹中的许多解决方案及其代码。每个解决方案都构建一个PrinterDriver.dll。我想要做的是创建一个主解决方案,我可以将所有项目添加到其中,然后他们将每次编译。

我现在不能这样做,当我将每个添加到主人时,我得到一个警告,告诉我该名称的项目已经存在。这样做的最佳方式是什么?

1 个答案:

答案 0 :(得分:2)

我建议你不要创建一个包含同名项目的主解决方案,最终会弄得一团糟......你必须更改程序集名称和命名空间,因为你发现最终得到了数十个名称空间模糊错误。

  

所有项目......每次都会编译

如果目标只是一次编译所有项目,那么只需编写一个使用所有项目文件编译输出的MSBUILD脚本。

例如:Compiling a .vbproj or .csproj project file without Visual Studio

如果您确实需要主解决方案,则需要进行手术。一种方法是创建反映每个项目中每个类的方法签名的接口(或抽象类),并使用IoC根据目标加载不同的实现类。

<小时/> 警告:警惕更改名称空间,而为名称空间添加唯一名称前缀可能听起来很简单。您必须了解其他项目引用的代码库(如Printer.DLL)的影响。