I added wcf services end point in asp.net core 2.0 to connected services and then I try to use that but with client there is only functions which ended with ..async
I don't want to use ...async.But there is no function without .async
What is problem with this?What should I do?
instead of using that
var response = SystemClient.SearchCountriesAsync(....
I want to use that
var response = SystemClient.SearchCountries(...
but it give that error
Error CS1061 'SystemClient' does not contain a definition for 'SearchCountries' and no extension method 'SearchCountries' accepting a first argument of type 'SystemClient' could be found (are you missing a using directive or an assembly reference?)
Your client does not expose synchronous method but that shouldn't be a problem for you.
Instead of asynchronously calling the method just do this:
response = SystemClient.SearchAirportsAsync(credentials, SystemHelperLanguageTypes.English, SystemHelperSearchTypes.CodeSearch, "ist").Result;
This will call the method synchronously as it will block the call. Check John Skeets answer here.
That being said I would recomend you use the async method that is provided. To support that you would have to change the Action signature to this:
public async Task<IActionResullt> Index()
{
SystemClient SystemClient = new SystemClient();
Credential credential = new Credential();
credential.UserName = "username";
credential.UserPassword = "****";
var response1 = await SystemClient.SearchCountriesAsync(credentials, SystemHelperLanguageTypes.English, SystemHelperSearchTypes.CodeSearch, "TR");
var response = await SystemClient.SearchAirportsAsync(credentials, SystemHelperLanguageTypes.English, SystemHelperSearchTypes.CodeSearch, "ist");
//Do whatever you do with those responses
ViewBag.Language = "ar";
return View();
}