0

在位于不同目录的不同解决方案之间使用共享项目时,我遇到了 nuget 数据包管理问题。一种解决方案是使用 nuget,另一种则不是。问题是数据包管理器在 .csproj 文件中添加了一行:

一只忙碌的猫

现在由于 nuget 包管理只在共享项目中使用,解决问题的方法是将 $(SolutionDir) 更改为 $(ProjectDir)。这工作并解决了现在的问题。

现在,每当重新打开启用了 nuget 数据包管理的解决方案时,它会自动将同一行(如上图所示)添加到共享项目 .csproj 文件中,这再次中断从另一个解决方案加载项目。

如何防止自动生成该导入子句,或者是否有其他优雅的解决方案?

4

1 回答 1

1

在不使用 NuGet 的解决方案中启用 NuGet 包还原应该可以解决您的问题(右键单击解决方案,启用包还原)。虽然您没有在该项目中使用 NuGet,但打开该选项并没有什么坏处。

就我个人而言,我尽量不要从多个解决方案中引用同一个项目,而是将它们转换为私有 NuGet 包。像这样进行开发可能会有点痛苦,因为您需要创建新包,部署然后将其安装到您的其他项目中。但它解决了许多其他令人头疼的问题,例如您当前遇到的问题以及让开发人员在签入时意外破坏其他项目。

于 2012-11-02T07:27:44.920 回答