Visual Studio 2015中的项目位置

3
我有一个ASP.NET Core应用程序,将使用一些类库项目(例如domain,repositories等)。
这些类库也将用于其他云应用程序中,该应用程序作为工作角色运行,这就是为什么我希望将它们分开并保持其自己的开发进程,并不一定依赖于ASP.NET Core应用程序。
说到这里,ASP.NET Core项目应该意识到对类库项目所做的任何更改,这就是为什么我想将它们链接到ASP.NET项目的解决方案中的原因。
如何组织这些项目文件夹才是最好的方式?目前我的文件夹结构如下:
我的项目文件夹
--- MyAspNetCoreProject(有自己的解决方案)
--- MyBackendProject(有自己的解决方案,其中包含以下项目)
----- DomainProject
----- RepositoriesProject
当我尝试“添加现有项目”以将我的后端项目链接到我的ASP.NET Core项目时,我收到以下消息:
引用:The project that you are attempting to add to source control may cause other source control users to have difficulty opening this solution or getting newer versions of it. To avoid this problem, add the project from a location below the binding root of the other source controlled projects in the solution.
1个回答

1
你需要将所引用的项目移动到同一解决方案下。如果你想要使用分离的解决方案,你不能将其作为一个项目进行链接——在 .NET Core 之前,你可以链接相应的程序集。

尝试在其他解决方案下链接项目时会遇到一个问题,那就是其他用户可能没有所有必要的解决方案副本,并且可能安装在与其他用户不同的位置。解决方案需要跟踪程序集的构建位置。

如果将库构建为 NuGet 包,则链接引用很容易。

你的选项如下:

  • 将所有项目移动到同一解决方案下
  • 保持分离的解决方案,并将你的库发布为(私有)NuGet 包

谢谢您的回复。我认为最好的策略是将库项目放在解决方案下,其中它们将大部分时间被编辑/开发 - 在我的情况下是在 ASP.NET Core 解决方案下。然后使用 NuGet 包共享给其他将使用它们的项目,例如云工作角色项目。 - Sam

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接