public NTierClient(IParamsNTierClient parameters, string oauthToken = "") { _parameters = parameters; _client = string.IsNullOrWhiteSpace(oauthToken) ? new TcpNETClient(new ParamsTcpClient { EndOfLineCharacters = "\r\n", Port = _parameters.Port, Uri = _parameters.Uri, IsSSL = _parameters.IsSSL }) : new TcpNETClient(new ParamsTcpClient { EndOfLineCharacters = "\r\n", Port = _parameters.Port, Uri = _parameters.Uri, IsSSL = _parameters.IsSSL }, oauthToken: oauthToken); _client.ConnectionEvent += OnConnectionEvent; _client.ErrorEvent += OnErrorEvent; _client.MessageEvent += OnMessageEvent; }
static async Task CreateClientAsync() { Console.WriteLine("Select service type: "); for (int i = 0; i < Enum.GetNames(typeof(RegisterType)).Length; i++) { Console.WriteLine($"{i + 1}: {((RegisterType)i).ToString()}"); } var line = Console.ReadLine(); if (int.TryParse(line, out var selection) && --selection >= 0 && selection < Enum.GetNames(typeof(RegisterType)).Length) { if (_client != null) { _client.MessageEvent -= OnNTierMessageEventAsync; _client.Dispose(); _client = null; } _parameters = new ParamsNTierClient { Port = 9345, ReconnectIntervalSec = 12, Uri = "localhost", RegisterType = (RegisterType)selection }; _client = new NTierClient(_parameters); _client.MessageEvent += OnNTierMessageEventAsync; await _client.StartAsync(); } await MenuAsync(); }