我正在编写一个C#项目,我想在VS2010和VS2012下编译。我希望有两个不同的.csproj
文件,即使VS2010项目可以直接包含在VS2012解决方案中。我想要两个不同的项目文件,因为目标.NET版本不同。
此外,我希望在VS2010和VS2012的不同解决方案中为两个项目命名相同。两者应共享相同的.cs
- 文件,可能还有一些资源。
轻松的任务?奇怪的是,但我不知道,如何正确地做到这一点。
第一种方法不起作用:将项目文件命名为MyProject10.csproj
和MyProject12.csproj
,将两者都保留在MyProject
文件夹中。但在这种情况下,它们在解决方案中显示为MyProject10
和MyProject12
,而不仅仅是MyProject
。如果我在解决方案资源管理器中将其重命名为MyProject
,它会自动重命名相应的项目文件。
第二种方法,有效,但有缺点。将项目文件移动到名为VS10
和VS12
的不同子目录中,手动更改.csproj
- 文件中的包含路径,添加..\
作为前缀。在这种情况下,我在解决方案资源管理器中的图标下看到了奇怪的快捷箭头。
第二种方法的唯一坏处是,当我使用解决方案资源管理器在项目中添加新文件时,此文件放在VS10
子目录中,而不是在根项目目录中。但它似乎是.csproj
的项目目录 - 文件是包含设计文件的目录,我使用了我真的不想做的力量的黑暗面。
有更好的想法吗?
答案 0 :(得分:0)
值得一试的是将两个项目中的输出程序集的名称更改为同一个。项目文件仍然不同,但输出程序集将具有相同的名称。还要小心输出目录在哪里。我想这样可以解决你的问题。