簡體   English   中英

如何以編程方式從另一個.Net項目啟動和停止.NetCore API Server項目; 在這種情況下,控制台應用程序?

[英]How can I programmatically start and stop a .NetCore API Server project from another .Net project; in this instance, a console application?

我的Visual Studio解決方案中有兩個項目。 一個是.NET Framework控制台應用程序,另一個是.NETCore API服務器。

我想要的是能夠從控制台啟動和停止服務器。

  • 我知道我不能只在控制台應用程序中寫啟動行
CreateWebHostBuilder(args).Build().Run();

因為這意味着“將服務器添加為控制台應用程序的引用”,並且由於不兼容而無法使用。

  • 我想從服務器的.exe文件啟動服務器,但事實證明,它是從IIS服務啟動的,后者將生成的Release文件夾提供給服務器。 因此似乎也不可能。

  • 我從另一個問題找到了這個答案 ,但是它說我們可以在控制台應用程序中創建一個自托管服務器。

從結構上講,我不確定將項目的整個服務器端放在“ Server.cs類”中是否是一個好習慣。 我以為從主項目開始的單獨項目會更好。


到目前為止,通過啟動兩個項目並使服務器從控制台等待Tcpsocket消息(啟動或退出),我得到了一個偽結果,但這絕對感覺不對,也不像我想要的那樣穩定。

有誰知道如何進行?

好的,我在此答案中找到了一個有關啟動程序化的問題的方法

基本上,我需要在.dll編譯我的API項目,並在以后使用命令啟動它

dotnet myServer.dll

暫無
暫無

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

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