我有一个第三方软件的插件,我引用了他们的程序集——我们称之为Api.dll。每年,Api.dll都会更新。我想支持过去几年的版本。由于程序集名称相同,我不能只添加它们并使用编译时标志 - 我必须手动删除、添加、重建。我怎样才能更好地自动化这个构建过程,这样我就可以同时构建我需要的所有版本,指向同名的适当版本.dll?
1 回答

三国纷争
TA贡献1804条经验 获得超7个赞
我会通过构建配置来做到这一点。如果您为每个版本创建一个配置,您可以csproj像这样编辑您的文件:
<Reference Include="v1/Api.dll" Condition="'$(Configuration)'=='Release Api v1'" />
<Reference Include="v2/Api.dll" Condition="'$(Configuration)'=='Release Api v2'" />
<Reference Include="v3/Api.dll" Condition="'$(Configuration)'=='Release Api v3'" />
这样做将根据配置更改被引用的库。
此外,如果您需要每个版本的特定代码,您可以为每个配置添加一些编译符号并使用 #if ...
- 1 回答
- 0 关注
- 255 浏览
添加回答
举报
0/150
提交
取消