Я работаю над приложением Windows Phone. При вызове функции ниже, после выполнения этой строки: HttpResponseMessage response = await client.GetAsync(connection1).ConfigureAwait(false);
он пропускает остальную часть кода, а элемент управления переходит к родительской функции и выполняет оставшуюся часть кода и снова возвращается к этой функции. Как решить эту проблему?Проблема с вызовом функции Async
public async void vehicleValidation()
{
//isValidVehicle = true;
var client = new System.Net.Http.HttpClient();
//string connection = "http://mymlcp.co.in/mlcpapp/get_slot.php?vehiclenumber=KL07BQ973";
string connection1 = string.Format("http://mymlcp.co.in/mlcpapp/?tag=GetIsValidUser&employeeId={0}&name={1}",txtVeh.Text,"abc");
HttpResponseMessage response = await client.GetAsync(connection1).ConfigureAwait(false);
//var response = await client.GetAsync(connection1);
// HttpResponseMessage response = client.GetAsync(connection1).Result;
var cont = await response.Content.ReadAsStringAsync();
var floorObj = Newtonsoft.Json.Linq.JObject.Parse(cont);
//var resp = await (new MLCPClient()).GetIsValidUser(txtVeh.Text, "xyz");
if (String.IsNullOrEmpty(floorObj["error"].ToString()) || floorObj["error"].ToString().Equals("true"))
{
isValidVehicle = false;
}
else
{
isValidVehicle = true;
}
}
отметить, что управление возвращается к вызывающему абоненту, когда вам нужно ждать что-то * точно * что вы должны ожидать с помощью метода async. Это в два раза. –
Я не думаю, что вы должны использовать 'ConfigureAwait (false)', поскольку он вызывает проблемы с синхронизацией. – Venky
@jonSkeet Можете ли вы объяснить? –