【问题标题】:How call WebAPI method in MVC and send the json object to it如何在 MVC 中调用 WebAPI 方法并将 json 对象发送给它
【发布时间】:2016-07-25 23:27:45
【问题描述】:

我需要在 MVC 控制器中调用此方法并将 UpdateRequest 对象作为 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);
    }

【问题讨论】:

    标签: c# json asp.net-mvc asp.net-mvc-4 asp.net-web-api


    【解决方案1】:

    我个人喜欢 Newtonsoft.Json 来序列化对象。

    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);
        }
    }
    

    仅供参考:没有返回的异步不是一个好习惯。但是,它不在原来的问题范围内。

    【讨论】:

      【解决方案2】:

      如果要将对象转换为 JSON 字符串,请参阅此问题:Turn C# object into a JSON string in .NET 4 var json = new JavaScriptSerializer().Serialize(obj);

      这是您所追求的,还是您想知道如何使用正文中的 JSON 对象构造 http 请求?

      【讨论】:

        【解决方案3】:

        你的问题不是很清楚,你期望的结果是什么? 如果您想 POST 带有 JSON 正文的请求,您可以查看 @Win 注释, 但是,如果您想从 Api 对 MVC 项目做出响应,您应该多做一些艰难的步骤。 :))

        【讨论】:

          猜你喜欢
          • 2015-11-11
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-08-04
          • 1970-01-01
          • 2017-08-16
          • 2016-04-01
          • 2023-03-27
          相关资源
          最近更新 更多