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
เริ่มต้นด้วยบทช่วยสอนนี้ที่เขียนโดย Mark Eastwood ผู้พัฒนาห้องสมุด
การสร้างเซิร์ฟเวอร์เป็นเรื่องง่าย..
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!"
} ) ;
}
}