2016-12-12 8 views
0

アプリケーションのjsonサービスにレコードを追加したいとします。どうすればService Urlでこれを行うことができますか?ここに私のコードです。XamarinフォームJsonサービスの挿入データ

CustomerModel customer = new CustomerModel(); 
       customer.Name = entryCompanyName.Text; 
       customer.Title = entryCompanyTitle.Text; 
       customer.PhoneNumber = entryTelephone.Text; 
       customer.FaxNumber = entryFax.Text; 
       customer.Email = entryEmail.Text; 
       customer.CityId = 6444; 

       string json = JsonConvert.SerializeObject(customer); 
       string sContentType = "application/json"; 
       string path = "service url"; 
       HttpClient Client = new HttpClient(); 
       var task = Client.PostAsync(path, new StringContent(json.ToString(), Encoding.UTF8, sContentType)); 

私はM.Wiśnickiのソリューションをしようとしているが、私はこのエラーを取っ

私は:(私はミスを犯すん、私はSystem.netを追加したときにエラーを取得できませんでした?

enter image description here

+0

を働いていましたか? –

+0

これらのメソッドは見つかりません。 GetRequestStreamAsync GetResponseAsync – ozmert75

答えて

1

これは、あなたがこのコードを持っているどのような問題が私のため

public static async Task<string> PostEntityToApi<T>(string yourMethodUrl, T yourModel) 
    { 
    try 
    { 
     if (_httpClient == null) 
     { 
      _httpClient = new HttpClient { BaseAddress = new Uri(yourWebSiteUrl) }; 
     } 

     var stringContentInput = new StringContent(JsonConvert.SerializeObject(dto), Encoding.UTF8, "application/json"); 

     var response = await _httpClient.PostAsync(new Uri(yourWebSiteUrl. + apiUrl), stringContentInput); 

     if (!response.IsSuccessStatusCode) 
     { 
      throw new Exception(response.StatusCode.ToString()); 
     } 

     var stringAsync = await response.Content.ReadAsStringAsync(); 

     LoggingManager.Error("Received error response: " + stringAsync); 

     return stringAsync; 
    } 
    catch (Exception exception) 
    { 
     return null; 
    } 
} 
1

あなたは私は私のアプリでそれを使用し、このサンプルは私のために働いて、WebRequestを使用することができます。

これはSystem.Net.WebRequestクラスで、ここであなたは0を見つけます。

public async Task<string> PostSample(object data, string uri) 
    { 
     // Create an HTTP web request using the URL: 
     var request = (HttpWebRequest) WebRequest.Create(new Uri(uri)); 
     request.ContentType = "application/json"; 
     request.Method = "POST"; 
     var itemToSend = JsonConvert.SerializeObject(data); 
     using (var streamWriter = new StreamWriter(await request.GetRequestStreamAsync())) 
     { 
      streamWriter.Write(itemToSend); 
      streamWriter.Flush(); 
      streamWriter.Dispose(); 
     } 

     // Send the request to the server and wait for the response: 
     using (var response = await request.GetResponseAsync()) 
     { 
      // Get a stream representation of the HTTP web response: 
      using (var stream = response.GetResponseStream()) 
      { 
       var reader = new StreamReader(stream); 
       var message = JsonConvert.DeserializeObject<string>(reader.ReadToEnd()); 
       return message; 
      } 
     } 
    } 
関連する問題