Networker
1.0.0
Простая в использовании сетевая библиотека TCP и UDP для .NET, разработанная как гибкая, масштабируемая и БЫСТРАЯ.
Менеджер пакетов NuGet
Install-Package Networker
Затем вам необходимо установить один из следующих форматтеров
Install-Package Networker.Extensions.ZeroFormatter
Install-Package Networker.Extensions.MessagePack
Install-Package Networker.Extensions.ProtoBufNet
Install-Package Networker.Extensions.Json
Начните с этого руководства, написанного разработчиком библиотеки Марком Иствудом.
Создать сервер легко..
var server = new ServerBuilder ( )
. UseTcp ( 1000 )
. UseUdp ( 5000 )
. RegisterPacketHandlerModule < DefaultPacketHandlerModule > ( )
. RegisterPacketHandlerModule < ExamplePacketHandlerModule > ( )
. UseZeroFormatter ( )
. ConfigureLogging ( loggingBuilder =>
{
loggingBuilder . AddConsole ( ) ;
loggingBuilder . SetMinimumLevel (
LogLevel . Debug ) ;
} )
. Build ( ) ;
server . Start ( ) ;
Вы можете легко обработать пакет, используя внедрение зависимостей, ведение журнала и встроенную десериализацию.
public class ChatPacketHandler : PacketHandlerBase < ChatPacket >
{
private readonly ILogger < ChatPacketHandler > _logger ;
public ChatPacketHandler ( ILogger < ChatPacketHandler > logger )
{
_logger = logger ;
}
public override async Task Process ( ChatPacket packet , IPacketContext packetContext )
{
_logger . LogDebug ( "I received the chat message: " + packet . Message ) ;
packetContext . Sender . Send ( new ChatPacket
{
Message = "Hey, I got your message!"
} ) ;
}
}