2
이가의 Andorid에 있지만 윈도우 폰 프로젝트에서 작동하는 PCLMVVMCross PCL REST 호출하지 윈도우 폰에서 안드로이드에서 작동
class CallSAPService : ICallSAPService
{
public string MakeSAPRestCall(string url, string jsondata, string username, string password)
{
string retmessage = "";
try
{
NetworkCredential cr = new NetworkCredential();
cr.UserName = username;
cr.Password = password;
HttpClientHandler handler = new HttpClientHandler();
handler.Credentials = cr;
HttpClient httpClient = new HttpClient(handler);
Uri Auri = new Uri(url);
StringContent content = new System.Net.Http.StringContent(jsondata.ToString(), Encoding.UTF8, "application/json");
var result = httpClient.PostAsync(Auri, content).Result;
Task<string> ff = result.Content.ReadAsStringAsync();
retmessage = ff.Result;
//StringContent content2 = new System.Net.Http.StringContent(jsondata.ToString(), Encoding.UTF8, "application/json");
//var httpClient2 = new HttpClient(new HttpClientHandler());
//Task<HttpResponseMessage> response = httpClient2.PostAsync(url, content2);
//response.Result.EnsureSuccessStatusCode();
//var res = response.Result;
// retmessage = res.Content.ReadAsStringAsync().ToString();
}
catch (Exception Ex)
{
retmessage = Ex.Message;
}
return retmessage;
}
}
}
에 다음 코드 조각이있다. 윈도우 폰 프로젝트의 라인 :
retmessage = ff.Result;
당신은 UI 스레드에서의 동기 I/O를 수행 할 수 없습니다 Task<string> ff = result.Content.ReadAsStringAsync();
내가이 줄 문제입니다 확신 실행 밖으로