每次我試圖從我的非asp.net核心項目添加引用到任何dll文件到我新的asp.net核心項目,我收到此錯誤信息:如何引用到在asp.net核心項目外部的dll文件
.NET核心項目僅支持在此版本中引用.NET框架程序集。要引用 其他程序集,它們需要包含在NuGet程序包和 引用該程序包中。
這裏應該發生的呢?有一種特殊的方式來做到這一點?接縫處有我丟失的東西在這裏它比所有以前的asp.net版本
每次我試圖從我的非asp.net核心項目添加引用到任何dll文件到我新的asp.net核心項目,我收到此錯誤信息:如何引用到在asp.net核心項目外部的dll文件
.NET核心項目僅支持在此版本中引用.NET框架程序集。要引用 其他程序集,它們需要包含在NuGet程序包和 引用該程序包中。
這裏應該發生的呢?有一種特殊的方式來做到這一點?接縫處有我丟失的東西在這裏它比所有以前的asp.net版本
截至目前不同的,你不能直接添加完整的.NET框架DLL到ASP.NET核心項目(netcoreapp1.0)。你將不得不創建NuGet包。
如果是項目特定的DLL,然後創建本地NuGet包。這些是我們在生成NuGet程序包時所遵循的步驟 -
1.下載Nuget.exe
並將其放在文件夾中,其中.csproj
文件存在。
2.Open cmd,然後鍵入的NuGet規範。帶有.nuspec
擴展名的文件將被創建。
3.Open創建的文件,並添加標籤:
<files> <file src="..\..\SomeRoot\**\*.*" target="libs\net461" /> </files>
4.Execute的NuGet包在cmd中A.csproj -IncludeReferencedProjects。帶有.nupkg
擴展名的文件被創建。
5.轉到視覺工作室。在NuGet程序包管理器設置中,添加「程序包源代碼」並提供您的文件存在.nupkg
和.nuspec
的路徑。
6.關閉NuGet包管理器,然後再次打開它。現在,您可以在瀏覽選項卡下的創建包中找到它。
注意:您的.nuspec
文件應該是這樣的:
<?xml version="1.0"?>
<package xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<metadata xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<id>ABC.XYZ.FL</id>
<version>1.0.0.0</version>
<title>ABC.XYZ.FL</title>
<authors>ABC</authors>
<owners>ABC</owners>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>Framework that will be used to create objects in XYZ world</description>
<releaseNotes>Summary of changes made in this release of the package.</releaseNotes>
<copyright>2016</copyright>
<tags>ABC.XYZ.FL</tags>
</metadata>
<files>
<file src="bin\Debug\*.dll" target="lib\net461" />
</files>
</package>
以下鏈接包含有關創建NuGet包並在本地託管它的詳細信息:
https://docs.nuget.org/create/creating-and-publishing-a-package
https://docs.nuget.org/create/hosting-your-own-nuget-feeds
https://docs.nuget.org/consume/nuget-config-file
看看這是否有幫助。
感謝您的回答。 Where's .. \ .. \ SomeRoot \ ** \ *。* ??? –
@ShortlyFD它只是一個項目根的例子。請參閱我答案的示例底部。 ' ' –
Sanket