簡體   English   中英

如何構建兩個二進制.NET Core 2控制台應用程序

[英]How to build two binaries .net core 2 console app

我是.NET Core和C Sharp的新手。 我想在同一個命名空間中建立兩個二進制文件。 它是兩個控制台應用程序,一台服務器和一個客戶端。 我想分享一些像“分數”的對象,然后這樣思考。 實際上,我已經創建了兩個應用程序(通過“ dotnet新控制台”命令),但是我可以更改並重新啟動。 我正在使用簡單的文本編輯器(emacs)在docker容器中工作。 那里沒有Visual Studio或Visual Studio代碼:)

有沒有可能?

編輯 :好的,我會嘗試更精確。 我必須創建兩個程序:一個是服務器,另一個是客戶端。 必須連接客戶端才能玩游戲(多人游戲)。 我是否必須創建兩個不同的項目(具有自己的名稱空間/類型/測試),還是可以創建一個簡單的項目(只需一次調用“ dotnet new console”命令)並共享相同的名稱空間,在服務器和客戶端之間共享某些類型(如分數班)和測試? 這是我的當前目錄(客戶端和服務器是通過“ donet new console”命令創建的兩個目錄:

├── README.md
├── client
│   ├── client.csproj
│   ├── obj
│   │   ├── client.csproj.nuget.cache
│   │   ├── client.csproj.nuget.g.props
│   │   ├── client.csproj.nuget.g.targets
│   │   └── project.assets.json
│   └── srcs
│       ├── Program.cs
│       └── Types
│           └── user.cs
├── docs
│   ├── rfc
│   │   └── donotremove
│   ├── text
│   │   └── donotremove
│   └── uml
│       └── donotremove
├── server
│   ├── obj
│   │   ├── project.assets.json
│   │   ├── server.csproj.nuget.cache
│   │   ├── server.csproj.nuget.g.props
│   │   └── server.csproj.nuget.g.targets
│   ├── server.csproj
│   └── srcs
│       ├── Program.cs
│       └── Types
│           └── server.cs
└── tests
    └── tests.cs

如果我正確理解了這個問題,那么您要做的就是更改每個類的名稱空間。

例如,假設您的二進制文件之一稱為Yourappname.Server ,另一個稱為Yourappname.Client 而且,如果我們假設您需要共享的通用命名空間是Yourcompany.Yourapp 然后只需將類的命名空間更改為Yourcompany.Yourapp完成工作。

還有一個技巧。您甚至可以使用using語句使用import語句在其他命名空間中導入類,或者可以將完全限定的類名與命名空間一起使用。

using Yourcompany.Yourapp;

要么

Yourcompany.Yourapp.Score score =new Yourcompany.Yourapp.Score();

無論如何,在這兩種情況下,都需要添加對二進制文件的引用。您可以使用.csproj文件來實現。

<ItemGroup>
    <ProjectReference Iclude="path to .csproj" />
</ItemGroup>

暫無
暫無

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

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