自從2010/2012以來,我已經知道在Visual Studio中複製/粘貼引用。這是否已更新爲與Core 2兼容?Visual Studio dotnet核心複製和粘貼引用
這裏的SO問題問的是舊式引用(核心之前,和的csproj格式的重新啓動前):Is it possible to copy/paste References from one project to another in Visual Studio?
自從2010/2012以來,我已經知道在Visual Studio中複製/粘貼引用。這是否已更新爲與Core 2兼容?Visual Studio dotnet核心複製和粘貼引用
這裏的SO問題問的是舊式引用(核心之前,和的csproj格式的重新啓動前):Is it possible to copy/paste References from one project to another in Visual Studio?
也許現在dotnet add package
是可用的,我們不需要在VS複製/粘貼引用?
"Add Google social login" walkthrough for ASP.NET Core 2.0建議使用DOTNET CLI添加包參考:
要使用.NET的核心CLI安裝,執行項目中的以下 目錄:
dotnet add package Microsoft.AspNetCore.Authentication.Google
寫這個答案我自己的問題,因此「只使用CLI」鄉親有事要給予好評。
如果您在談論NuGet軟件包引用,請不要嘗試手動將解析的引用複製到dll文件(在加載項目後的設計時生成的文件是從obj\project.assets.json
文件生成的)。
在新的基於SDK的項目模型和引用NuGet包(也可用於「經典」項目)的PackageReference方法中,NuGet引用會自動在包引用之間流動傳輸。因此,當您的應用程序引用使用NuGet包的庫時,不再需要在庫和應用程序(以及潛在的測試項目)中安裝NuGet包。
僅適用於「經典」引用,此問題仍然存在。但是,如果您需要將它們導入到所有項目中(例如,您從第三方獲取了一些.dll文件),則可以在解決方案文件夾中創建一個Directory.Build.targets
,將它們添加到解決方案中的所有項目中(技術上,該文件是自動導入到目錄層次結構中的所有項目):
<Project>
<ItemGroup>
<Reference Include="AssemblyName">
<HintPath>shared-libs\AssemblyName.dll</HintPath>
</Reference>
</ItemGroup>
</Project>
(您可能要更改參考,如果你想在https://stackoverflow.com/a/16580870/784387所描述的「特定版本」功能或強名稱引用)
我實際上是將ASP.NET模板中的引用複製到我的「域層」項目/ DLL中。我希望你會同意將像Entity Framework這樣的引用複製到上游項目中仍然是值得的。 – yzorg
不確定...如果它是一個NuGet包,默認情況下,事物將轉移到新的項目類型的'PackageReference'中,並且流傳遞。但現在它是一個分裂的世界(=>混亂) –
沒錯。 ''正是我正在談論的複製/粘貼。我不認爲這是一團糟。但是我希望我的工具能夠工作,或者至少能夠理解新工具爲什麼會以不同的方式工作(明確的決定,還是尚未完成)。 –
yzorg