Я использую индикатор занятости для работы с процессом входа в систему с помощью ProgressDialog, да, я знаю, что он устарел, но удовлетворяет требованию.У меня проблема в том, что вызов веб-службы (да, я знаю, что она устарела) не удается, нет ошибок, ничего.Мой код:
private async void MyLogon()
{
nDialog = new ProgressDialog(this);
nDialog.SetMessage("Validating ...");
nDialog.SetTitle("Log On");
nDialog.Indeterminate = false;
nDialog.SetCancelable(true);
nDialog.Show();
var thread = new System.Threading.Thread(new ThreadStart(delegate
{
// Set the protocol
ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;
// Instanciate the service
DataInterfaceWeb.DataInterface myService = new OMLDataInterfaceWeb.OMLDataInterface();
// Fails here, cannot trap any error
result = myService.Logon(MyUser.Username, MyUser.Password);
}));
thread.Start();
while (thread.ThreadState == ThreadState.Running)
{
await Task.Delay(100);
}
}
Существует не так много, чтобы решить эту проблему, был один пост, в котором предлагалось использовать await
vis wait
, но я уже использую это.У кого-нибудь есть идеи?