コード例 #1
0
        /// <summary>
        /// Устанавливает подключение к серверу.
        /// </summary>
        /// <param name="serverConfig"></param>
        /// <returns></returns>
        private static LersServer ConnectServer(ServerConfig serverConfig)
        {
            logger.Info($"Подключение к серверу {serverConfig.Address}:{serverConfig.Port}");

            var server = new LersServer("Утилита синхронизации данных по точкам учёта.");

            // Игнорируем разницу в версиях.
            server.VersionMismatch += (sender, e) => e.Ignore = true;

            server.Connect(serverConfig.Address, serverConfig.Port, new Lers.Networking.BasicAuthenticationInfo(
                               serverConfig.Login, Lers.Networking.SecureStringHelper.ConvertToSecureString(serverConfig.Password)));

            return(server);
        }
コード例 #2
0
ファイル: MainForm.cs プロジェクト: mgerasim/lers-uchet
        private void LersConnect()
        {
            lersServer = new LersServer();

            string login        = tbLogin.Text;
            string secureString = tbPassword.Text;

            SecureString password = new SecureString();

            foreach (char symbol in secureString)
            {
                password.AppendChar(symbol);
            }

            BasicAuthenticationInfo authInfo = new BasicAuthenticationInfo(login, password);

            try
            {
                //Игнорируем разницу в версиях в ЛЭРС Учет
                lersServer.VersionMismatch += (sender, e) => e.Ignore = true;

                lersServer.Connect(tbServer.Text, Convert.ToUInt16(tbPort.Text), authInfo);
            }
            catch (ServerConnectionException connection)
            {
                MessageBox.Show(connection.Message, "Ошибка подключения", MessageBoxButtons.OK, MessageBoxIcon.Error);
                tbLogin.Select();
                return;
            }
            catch (AuthorizationFailedException authorization)
            {
                MessageBox.Show(authorization.Message, "Ошибка входа", MessageBoxButtons.OK, MessageBoxIcon.Error);
                tbLogin.Select();
                return;
            }
            catch (LersServerException server)
            {
                MessageBox.Show(server.Message, "Ошибка обработки запроса сервером", MessageBoxButtons.OK, MessageBoxIcon.Error);
                tbLogin.Select();
                return;
            }
        }