我已经通过列表通过我的 WCF 服务发送了各种其他对象,没有任何问题,但是当我尝试发送这个特定对象(在列表中)时,我得到了一种超时错误。
跟踪标识符是: TraceIdentifier http://msdn.microsoft.com/da-DK/library/System.ServiceModel.Diagnostics.TraceTruncatedQuotaExceeded.aspx
奇怪的是:我得到了另一种专门返回对象(不在列表中)的方法,它工作正常。
此外,在调试时,我发现该方法(在服务端)返回列表很好,但是客户端显然无法接收它。
这是调用服务的方法(它在声明“revs”的行失败):
public void GetReviewsInModule()
{
using (var db = new RentItServiceClient())
{
var revs = db.GetReviewsInModule(1);
}
}
这是实际将对象作为列表返回的方法(对其进行了调试,并且可以正常返回):
public List<ReviewModule> GetReviewsInModule(int id)
{
using (Context con = new Context())
{
con.Configuration.ProxyCreationEnabled = false;
var mod = con.Modules.Find(id);
if (mod == null)
throw new WebServiceValidationException("Object does not exist");
List<ReviewModule> revs = con.ModuleReviews.Include("User").Where(r => r.Module.Id == id).ToList();
return revs;
}
}
此外,列表中的对象几乎没有任何大小,所以请不要告诉我提高发送/接收限制/超时。