C# 如何在web api中发送两个对象作为响应消息和响应代码

C# 如何在web api中发送两个对象作为响应消息和响应代码,c#,asp.net-web-api,C#,Asp.net Web Api,我想发送这样的响应消息 {"message_code": 00, "message": "Success"} {"message_code": "00", "message": "Success"} 我的响应消息类 public class ResponseMessage { public string MessageCode { get; set; } public string Message { get; set; } } 和我的消息方法 public Resp

我想发送这样的响应消息

{"message_code": 00, "message": "Success"}
{"message_code": "00", "message": "Success"}
我的响应消息类

 public class ResponseMessage
 {
    public string MessageCode { get; set; }
    public string Message { get; set; }
 }
和我的消息方法

public ResponseMessage Message(FundTransfer transfer)
{
    var checkBalance = 
    BusinessLayer.Api.AccountHolderApi.GetBalance(transfer.FromAccount);

    if (checkBalance.Balance.ToDecimal() < transfer.Amount)
    {
        return new ResponseMessage
        {
            MessageCode = "22",
            Message = "Insufficient Balance"
        };
    }
    else
    {
        var transferData = BusinessLayer.Api.AccountHolderApi
            .FundTransfer(transfer);

        if (transferData == true)
        {
            return new ResponseMessage { MessageCode = "00", Message = "Success" };
        }
        else
        {
            return new ResponseMessage { MessageCode = "11", Message = "Some Error" };
        }
    }  
}
现在,例如,当我的
Message()
方法中的
transferData==true
时,我只得到消息对象值“Success”,因为在我的返回内容中,我返回的是
响应。Message
。我希望得到JSON格式的响应,如下所示

{"message_code": 00, "message": "Success"}
而不仅仅是“成功”


目前正在学习Web API。

重构API方法以返回模型,而不仅仅是消息属性

[HttpPost]
[ActionName("transfer")]
public IHttpActionResult FundTransfer([FromBody] FundTransfer transfer) {
    var response = Message(transfer);
    if (response.MessageCode == "11") {
        return Content(HttpStatusCode.BadRequest, response);
    } else {
        return Ok(response);
    }
}
也是为了得到这样的信息

{"message_code": 00, "message": "Success"}
{"message_code": "00", "message": "Success"}
通过JSON属性重构
ResponseMessage

 public class ResponseMessage {
    [JsonProperty("message_code")]
    public string MessageCode { get; set; }
    [JsonProperty("message")]
    public string Message { get; set; }
 }
或者匿名构造模型

[HttpPost]
[ActionName("transfer")]
public IHttpActionResult FundTransfer([FromBody] FundTransfer transfer) {
    var response = Message(transfer);
    var model = new {
        message_code = response.MessageCode,
        message = response.Message
    };
    if (response.MessageCode == "11") {
        return Content(HttpStatusCode.BadRequest, model);
    } else {
        return Ok(model);
    }
}