2016-07-25 28 views
0

MVCコントローラでこのメソッドを呼び出し、UpdateRequestオブジェクトをjson形式で渡す必要があります。どのように私はそれを行うことができますか?MVCでWebAPIメソッドを呼び出してjsonオブジェクトを呼び出す方法

[HttpPost] 
    [Route("updatecertificate")] 
    public void updatecertificate([FromBody] UpdateRequest certificatereviewed) 
    { 
     loansRepository.updatecertificate(certificatereviewed.Id, certificatereviewed.CertificateReview); 
    } 

と、これは入力クラスです:

public class UpdateRequest { 
    public int Id { get; set; } 
    public bool CertificateReview { get; set;} 
} 

これは私が別の変数を呼び出して送る方法ですが、今、私はJSON形式でクラスオブジェクトを送りたいです。

private async Task UpdateFundingCertificateReviewed(int id, bool fundingCertificateReviewed) 
    { 
     await httpClient.PostAsync(string.Format("{0}/{1}", LoanApiBaseUrlValue, updatecertificate),null); 
    } 

答えて

0

私は個人的にNewtonsoft.Jsonがオブジェクトをシリアライズするのが好きです。 FYI

private async Task UpdateFundingCertificateReviewed 
     (int id, bool fundingCertificateReviewed) 
{ 
    using (var client = new HttpClient()) 
    { 
     var url = string.Format("{0}/{1}", LoanApiBaseUrlValue, updatecertificate); 
     var updateRequest = new UpdateRequest { Id = 1, CertificateReview = true}; 
     var data = JsonConvert.SerializeObject(updateRequest); 
     await client.PostAsync(url, data); 
    } 
} 

非同期復帰せずには良い方法ではありません。しかし、それは元の質問の外です。

0

あなたはJSON文字列にオブジェクトを変換したい場合は、この質問を参照してください。Turn C# object into a JSON string in .NET 4 var json = new JavaScriptSerializer().Serialize(obj);

はあなたが後にしているか、あなたがhttpリクエストを構築する方法を知りたいです何これです本文のJSONオブジェクトですか?

0

あなたの質問はあまり明確ではありませんが、あなたが期待している結果は何ですか? あなたはPOSTにJSON本体とのリクエストをしたい場合は、APIからあなたが厳しいもう少し手順を実行する必要がありMVCプロジェクトに応答を作りたい場合は、しかし、@Winコメント、 を確認することができます。 :))

関連する問題