[英]Asp MVC WebApi & .Net Core build results in conflicting binaries
[英]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.