我给了一个文件夹,其中包含许多子文件夹中的解决方案及其代码。每个解决方案构建一个PrinterDriver.dll。我想要做的是创建一个主解决方案,我可以将所有项目添加到每个项目中,然后他们将全部编译。C#如何创建一个具有多个相同命名项目的解决方案?
我目前无法做到这一点,当我向主人添加每一个时,我收到一个警告,告诉我该名称的项目已经存在。做这个的最好方式是什么?
我给了一个文件夹,其中包含许多子文件夹中的解决方案及其代码。每个解决方案构建一个PrinterDriver.dll。我想要做的是创建一个主解决方案,我可以将所有项目添加到每个项目中,然后他们将全部编译。C#如何创建一个具有多个相同命名项目的解决方案?
我目前无法做到这一点,当我向主人添加每一个时,我收到一个警告,告诉我该名称的项目已经存在。做这个的最好方式是什么?
我强烈建议您不要创建一个包含同名项目的主解决方案,最终会导致一团糟...您必须更改程序集名称和命名空间,并且您发现最终会生成有数十个命名空间模糊错误。
所有项目......都将编译每次
如果目标仅仅是编译所有的项目一次,每一次,然后简单地编写使用的所有项目中的MSBUILD脚本文件来编译输出。
如:Compiling a .vbproj or .csproj project file without Visual Studio
如果你想有一个主的解决方案将需要手术治疗。一种方法是创建接口(或抽象类),以反映每个项目中每个类的方法签名,并使用IoC根据目标加载不同的实现类。
[Dll Hell](https://en.wikipedia.org/wiki/DLL_Hell)供参考 – Jonesopolis
通过重命名所有项目名称或组合名称相同的项目文件,使所有项目名称具有唯一性。 – Jonesopolis
为每个项目使用相同的名称会令人困惑。如果解决方案具有不同的命名空间,我认为您可以使用相同的命名解决方案,但默认情况下,命名空间是解决方案的名称。正如Jonesopolis所说,最好的做法是以不同的方式命名它们。 – VirtualLife
将项目重命名为Something.PrinterDriver,SomethingElse.PrinterDriver等。 –