简单点说,
假设我有一个包含3个项目的解决方案(1、2和3)
Solution
Project-1 (Console Application referencing Project-2 and Project-3)
Project-2 (Class Library)
Project-3 (Class Library)当我构建/重新构建解决方案时,一切看起来都很好,这意味着我在Project-2/3中更新了一些代码,控制台应用程序(Project-1)可以得到这些更新。
我遇到的问题不是构建,而是当我做发布的时候。
假设我已经发布了项目1,2和3。一切都很好。
然后,更改Project-2中的代码,然后重新构建-整个解决方案(右击解决方案->重构解决方案)。
然后,在这个时候,当我发布Project-1时,它仍然在使用Project-2中的旧代码。
我可以通过重新发布Project-2然后Project-1来解决这个问题,但是当在一个解决方案下有许多项目,并且有相当多的人在同一个解决方案中工作时,这是很乏味的。
与构建/重建不同,它可以在解决方案级别完成。发布只能在项目级别1×1中完成。
是否有任何方法可以发布解决方案(这可以触发发布解决方案中的所有项目)?
发布于 2022-09-02 07:07:47
检查您的.csproj文件,如何添加引用?
1.发布类库并引用.dll文件,如:
<ItemGroup>
<Reference Include="ClassLibrary1">
<HintPath>..\ClassLibrary1\bin\Release\net6.0\ClassLibrary1.dll</HintPath>
</Reference>
</ItemGroup>2.从类似于的解决方案中添加项目引用
<ItemGroup>
<ProjectReference Include="..\ClassLibrary1\ClassLibrary1.csproj" />
</ItemGroup>如果使用第一种方法添加引用,则在修改project2代码后,需要重新发布project2以将更改应用到project1。
如果使用第二种方法--对project2的更改将立即应用于project1,则只需重新发布project1。
我做了一个这样简单的测试:

https://stackoverflow.com/questions/73565228
复制相似问题