将多个参数传递给 client.PostAsJsonAsync 函数

Passing multiple parameters to client.PostAsJsonAsync function

我目前在我的网站 api 上发帖是这样的:

client.PostAsJsonAsync("api/controller/methodincontroller", listOfProductObject);

我想知道除了我的 Product 对象列表之外,我还可以向我的控制器中的方法发送一个额外的字符串,而无需使其成为我的 Product 模型的 属性。

如果这不可能,我将不得不为此目的制作一个具有 2 个属性的模型:

IList<Product> productList
string additionalParam

好的,所以我得到了一个不使用 PostAsJsonAsync:

的示例

设置:

string json = JsonConvert.SerializeObject(new List<somemodel> { new somemodel() });
StringContent sc = new StringContent(json, Encoding.UTF8, "application/json");

HttpClient c = new HttpClient(new HttpClientHandler { UseDefaultCredentials = true });
var x = c.PostAsync("http://localhost:58893/api/values?additionalParam=" + "test", sc).Result; // returns 200

控制器:

public IHttpActionResult Post([FromUri] string additionalParam, [FromBody] List<somemodel> models)

显然这适用于我的示例对象 somemodel 但你明白了。