通过不同的控制器发布和阅读Json

时间:2015-04-10 19:24:45

标签: json asp.net-mvc asp.net-mvc-3 asp.net-mvc-4 asp.net-mvc-5

我想从控制器A向控制器B发送一个对象。哪个参数必须接收B来处理我通过POST从A发送的数据。

A上的POST是使用HttpClient而不是通过jquery

在控制器内部进行的

1 个答案:

答案 0 :(得分:1)

假设你有一个视图模型:

public class MyViewModel
{
    public int Id { get; set; }
    public string Foo { get; set; }
}

您的Controller B的操作作为参数:

public ActionResult MyAction(MyViewModel model)
{
    ...
}

您可以使用HttpClient将模型作为JSON发送:

var model = new MyViewModel
{
    Id = 123,
    Foo = "bar",
};
string data = JsonConvert.SerializeObject(model);
var httpClient = new HttpClient();
var content = new StringContent(data, Encoding.UTF8, "application/json");
var response = await httpClient.PostAsync(uri, content);