REST 服务没有 return 正确的元组
REST service doesn't return a tuple correctly
我有 REST 服务,我想从中 return 一个元组。元组将是 2 个列表。请参阅下面的代码。 GetRecords 方法 return 元组,当我检查结果变量时,我可以看到我需要的一切都在那里并且正确。
public HttpResponseMessage GetRecords([FromUri] List<int> ids)
{
try
{
Tuple<List<Class1>, List<Class2>> result = DataAccess.GetRecords(ids);
return Request.CreateResponse(HttpStatusCode.OK, result);
}
}
这是我的调用代码:
HttpResponseMessage response = await client.GetAsync(url);
Tuple<List<Class1>, List<Class2>> result = await response.Content.ReadAsAsync<Tuple<List<Class1>, List<Class2>>>();
所以一切似乎都没有错误,但是我在调用代码中的结果变量是空的。有人知道我错过了什么吗?
如果我将我的代码更改为 return 列表而不是元组,那么它就可以工作了。
请帮忙。
根据MSDN,我假设你不能序列化元组,因为它缺少无参数构造函数。
编辑:
可以找到可能的解决方法 there。
我有 REST 服务,我想从中 return 一个元组。元组将是 2 个列表。请参阅下面的代码。 GetRecords 方法 return 元组,当我检查结果变量时,我可以看到我需要的一切都在那里并且正确。
public HttpResponseMessage GetRecords([FromUri] List<int> ids)
{
try
{
Tuple<List<Class1>, List<Class2>> result = DataAccess.GetRecords(ids);
return Request.CreateResponse(HttpStatusCode.OK, result);
}
}
这是我的调用代码:
HttpResponseMessage response = await client.GetAsync(url);
Tuple<List<Class1>, List<Class2>> result = await response.Content.ReadAsAsync<Tuple<List<Class1>, List<Class2>>>();
所以一切似乎都没有错误,但是我在调用代码中的结果变量是空的。有人知道我错过了什么吗?
如果我将我的代码更改为 return 列表而不是元组,那么它就可以工作了。
请帮忙。
根据MSDN,我假设你不能序列化元组,因为它缺少无参数构造函数。
编辑:
可以找到可能的解决方法 there。