簡體   English   中英

從C#腳本引用本地csproj

[英]Referencing a local csproj from a C# script

我一直在嘗試使用C#腳本(* .csx)來對一些內部API的服務調用結果進行一些數據處理。 到目前為止它一直很順利,但我現在正試圖從我有權訪問的C#項目中調用一些方法。 C#的項目沒有發布的NuGet包,這意味着直接引用的DLL使用#r 但是為了訪問必要的函數,我發現我還需要在腳本的頂部添加對任何項目依賴項和依賴項使用的任何nuget包的引用。

#r "PATH_TO_SOLUTION\Project\bin\Debug\netstandard2.0\binary.dll"
#r "PATH_TO_SOLUTION\ProjectDependency\bin\Debug\netstandard2.0\dependent.dll"
#r "nuget: Some.Dependency, 11.0.2"
#r "nuget: Some.Other.Dependency, 10.0.2"
#r "nuget: Some.Third.Dependency, 9.0.2"
using Project;

我是C#腳本世界的新手,並沒有找到任何直接解決這個問題的東西,所以希望我不會在這里問一些非常明顯的東西。

有些項目依賴於相當多的nuget包,有沒有辦法從C#腳本引用csproj,不需要顯式引用項目的所有依賴項?

如果我能提供任何其他信息,請告訴我。

請注意Essential .NET - Microsoft Docs上的C#腳本

您可以獲取整個列表並將其另存為CSX文件,然后使用#load Spell.csx將文件“導入”或“內聯”到C#REPL窗口中。 #load指令允許您包含其他腳本文件,就好像所有#load文件都包含在同一個“項目”或“編譯”中一樣。將代碼放入單獨的C#腳本文件可以實現一種文件重構,更重要的是,隨着時間的推移持久保存C#腳本的能力。

獲取所有參考,將其保存為CSX文件並試一試。

例如:

//Load scripts
#load "Script.csx"  
using Project;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM