我有一個(gè)第三方軟件的插件,我引用了他們的程序集——我們稱之為Api.dll。每年,Api.dll都會(huì)更新。我想支持過去幾年的版本。由于程序集名稱相同,我不能只添加它們并使用編譯時(shí)標(biāo)志 - 我必須手動(dòng)刪除、添加、重建。我怎樣才能更好地自動(dòng)化這個(gè)構(gòu)建過程,這樣我就可以同時(shí)構(gòu)建我需要的所有版本,指向同名的適當(dāng)版本.dll?
1 回答

三國(guó)紛爭(zhēng)
TA貢獻(xiàn)1804條經(jīng)驗(yàn) 獲得超7個(gè)贊
我會(huì)通過構(gòu)建配置來做到這一點(diǎn)。如果您為每個(gè)版本創(chuàng)建一個(gè)配置,您可以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'" />
這樣做將根據(jù)配置更改被引用的庫(kù)。
此外,如果您需要每個(gè)版本的特定代碼,您可以為每個(gè)配置添加一些編譯符號(hào)并使用 #if ...
- 1 回答
- 0 關(guān)注
- 240 瀏覽
添加回答
舉報(bào)
0/150
提交
取消