【发布时间】:2017-12-07 03:25:45
【问题描述】:
我正在尝试将整数列表传递给 C# 控制器操作。我有以下代码:
HttpRequestMessage request;
String myUrl = 'http://path/to/getData';
List<int> data = new List<int>() { 4, 6, 1 };
request = new HttpRequestMessage(HttpMethod.post, myUrl);
request.Content = new StringContent(JsonConvert.SerializeObject(data, Formatting.Indented));
HttpResponseMessage response = httpClient.SendAsync(request).Result;
String responseString = response.Content.ReadAsStringAsync().Result;
var data = (new JavaScriptSerializer()).Deserialize<Dictionary<string, object>>(responseString);
控制器动作:
[HttpPost]
[ActionName("getData")]
public Response getData(List<int> myInts) {
// ...
}
然而,结果 responseString 是:
{"Message":"An error has occurred.","ExceptionMessage":"No MediaTypeFormatter is available to read an object of type 'List`1' from content with media type 'text/plain'.","ExceptionType":"System.InvalidOperationException}
【问题讨论】:
-
如果其中一个答案对您有所帮助,请点赞并将其标记为答案。如果您的问题仍未得到解答,请告诉我们。如果您发现问题的不同答案,请将其作为答案发布。谢谢! :)
标签: c# asp.net http controller http-post