我有一个C#的WebAPI方法与此签名:阵列被截断
[HttpPost]
[Route("getbyid/{date}")]
public Response Get(DateTime date, [FromBody] List<string> ids)
当我打电话从邮差这个方法具有n个串在体内的列表,一切工作正常。我的列表只是看起来像
["id1","id2","id3"...]
但是,当我写一个小的C#客户端来调用它,我发现数组被截断。这不是消息大小的问题。如果我发送100个项目,则在75-80之间的地方进行服务。如果我送500约475做它。我通过记录确认该列表在调用该服务之前有500个项目,并且在控制器内部有500个项目。
这里是我的客户端代码:
string url = ".../getbyid/2017-01-01";
List<string> payload = new List<string>();
// logic to put 500 items in the list
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
request.UseDefaultCredentials = true;
request.Method = "POST";
request.ContentType = "application/json";
StreamWriter writer = new StreamWriter(request.GetRequestStream());
JsonWriter jsonWriter = new JsonTextWriter(writer);
JsonSerializer json = new JsonSerializer();
json.Serialize(jsonWriter, payload);
WebResponse response = request.GetResponse();
Stream responseStream = response.GetResponseStream();
if (responseStream == null) throw new EndOfStreamException();
StreamReader reader = new StreamReader(responseStream, Encoding.UTF8);
// do processing...
我在做什么错?
宾果!谢谢!我在GetResponse调用之前添加了这一行,现在所有的结果都将它传递给服务。 – user55295