Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 具有dll引用的.NET核心生成_C#_.net_Asp.net Core_Asp.net Core 2.0 - Fatal编程技术网

C# 具有dll引用的.NET核心生成

C# 具有dll引用的.NET核心生成,c#,.net,asp.net-core,asp.net-core-2.0,C#,.net,Asp.net Core,Asp.net Core 2.0,我正试图让.NETCore在我的工作中与构建系统一起工作,构建系统是用Java设计的。但不幸的是,它已经融入到我们的管道中,我们不可能没有它。因此,如果我想在工作中使用.NET,它必须与这个构建系统一起使用 每个项目都构建在一个包中,并有自己的git存储库 给定一个如下所示的程序,其中MyConsoleApp依赖于MyLibrary MyProgram-Solution - MyConsoleApp - MyLibrary 在构建时,源代码将放在 /build/packages/MyCon

我正试图让.NETCore在我的工作中与构建系统一起工作,构建系统是用Java设计的。但不幸的是,它已经融入到我们的管道中,我们不可能没有它。因此,如果我想在工作中使用.NET,它必须与这个构建系统一起使用

每个项目都构建在一个包中,并有自己的git存储库

给定一个如下所示的程序,其中
MyConsoleApp
依赖于
MyLibrary

MyProgram-Solution
 - MyConsoleApp
 - MyLibrary
在构建时,源代码将放在

/build/packages/MyConsoleApp/
/build/packages/MyLibrary/
然而,我一次只能构建一个,并且我不能移动源代码。 这意味着我需要首先构建
MyLibrary
,而DLL最终将在

/build/packages/MyLibrary/out/MyLibrary.1.0.dll
当我构建MyConsoleApp时,我需要一种方法来告诉.NET核心构建工具,
MyLibrary.1.0.dll
文件可以在

/build/packages/MyLibrary/out/MyLibrary.1.0.dll
在Nuget中存储包不是一个选项,因为包在构建时可能还没有准备好发布,并且构建系统在沙箱模式下工作,这意味着它没有外部连接


如果可能的话,我可以编辑MyConsoleApp.csproj。

您可以使用Visual Studio添加程序集引用,与.NET Framework项目相同

如果要手动修改项目文件,则需要以下内容:

<ItemGroup>
  <Reference Include="MyLibrary">
    <HintPath>..\..\..\MyLibrary\out\MyLibrary.1.0.dll</HintPath>
  </Reference>
</ItemGroup>

..\..\..\MyLibrary\out\MyLibrary.1.0.dll

无需外部连接即可使用NuGet
MyLibrary
可以构建一个包,然后MyConsoleApp可以使用
NuGet.config
文件在构建系统上添加一个文件夹作为NuGet包源,即直接从
/build/packages/MyLibrary/out/
中提取NuGet包。