visual-studio - Visual Studio 2015 中的项目位置

标签 visual-studio visual-studio-2015 asp.net-core class-library

我有一个 ASP.NET Core 应用程序,它将使用一些类库项目,例如域、存储库等。

这些类库还将在另一个作为 worker 角色运行的云应用程序中使用,这就是为什么我想将它们分开,并且它们的开发应该遵循自己的过程,而不一定依赖于 ASP.NET Core 应用程序。

话虽如此,ASP.NET Core 项目应该知道对类库项目所做的任何更改,这就是为什么我想将它们链接到 ASP.NET 项目的解决方案。

构建这些项目文件夹的最佳方式是什么?目前我的文件夹结构如下:

我的项目文件夹

--- MyAspNetCoreProject(有自己的解决方案)

--- MyBackendProject(有自己的解决方案,其中包含以下项目)

----- 领域项目

----- 存储库项目

当我尝试“添加现有项目”以将我的后端项目链接到我的 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.

最佳答案

您需要将引用的项目移动到同一解决方案下。如果您确实需要单独的解决方案,则不能将其链接为一个项目——在 .NET Core 之前,您可以改为链接程序集。

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

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

你的选择变成了

  • 将所有项目移动到同一个解决方案下
  • 保留单独的解决方案并将您的库发布为(私有(private))NuGet 包

关于visual-studio - Visual Studio 2015 中的项目位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40442144/

相关文章:

c - 消除一段代码中未使用的静态函数警告

visual-studio - Visual Studio 2015 : No 64-bit command prompt

c# - .NET Core Web api 仅在 IIS 上调用 ERR_CONNECTION_RESET - 其他调用有效

visual-studio - Mac 上的 IPA 在哪里(当它用作构建服务器时)?

visual-studio - Visual Studio 标准化不一致的行结尾是什么意思?

windows - 无法在 visual studio 中分析

vb.net - 仅 Roslyn 的 Lambda 语句编译器错误 : Expression cannot be converted into an expression tree

c++ - 在 VS Community 2015 中使用 qmake

asp.net-core - 在 IIS 上使用 Asp.Net Core 2.1.1 发布 Angular 6 应用程序

c# - AJAX 发布数据到达 ASP.NET Core 2.1 Controller 时为空