/// <summary> /// Проверка подключения к серверу /// </summary> private void _ViewSettings_OnCheckConnection(string server, Authorization authType, string login, string password) { //TODO: Добавить тип авторизации при необходимости _ModelConnection.Connect(server, login, password); switch (_ModelConnection.Status) { case ConnectStatus.Ok: break; case ConnectStatus.ServerNotFound: throw new Exception("Не удается найти сервер. Проверьте адрес подключения"); case ConnectStatus.IncorrectPassOrLogin: throw new Exception("Логин/пароль введены неверно"); default: throw new Exception("Неизвестная ошибка при подключении"); } }
}); break; case Contract.ConnectStatus.ServerNotFound: _view.ShowConError("Неправильное имя сервера"); break; case Contract.ConnectStatus.IncorrectPassOrLogin: _view.ShowConError("Неправильный логин или пароль"); break; default: _view.ShowConError("Неизвестная ошибка при подключении"); break; } } public async void Connect() { try { await Task.Run(() => { _loginModel.Connect(_view.Server, _view.UserName, _view.Password); }); } catch(Exception undefined) { _view.StopProgress(); _view.ShowConError(undefined.Message); } } public ILoginView GetView() { return this._view; } } }