WCF Web服务:响应为200/ok,但响应正文为空

dao*_*res 5 c# asp.net wcf asp.net-web-api

我正在创建一个WCF web api服务.我的问题是某些方法返回200/OK响应,但标题和正文是空的.

在设置我的Web服务时,我创建了一个ADO.NET实体数据模型.我添加代码生成项时选择了ADO.NET DbContext Generator.在Model.tt文档中,我将HashSet和ICollection更改为List.我建立了我的网站.

它曾经是,当我编码为返回的实体(如列表的方法List<Customer>List<Employee>在Northwind数据库),它工作得很好.随着时间的推移,我无法返回任何一个列表,只能抓住一个实体.现在,它已经到了一个点,我可以返回一个List<string>List<int>,但不是一个List或任何实体的实例.当我尝试获取时List<AnyEntity>,响应为200/OK,但响应标头和正文是空的.

我尝试过使用调试器和Firefox的Web控制台.使用FF的WC,我只能得到一个"未定义"的状态代码.我不知道从哪里开始.

编辑:在尝试从数据库中抓取所有区域时,我这样做:

[WebGet(UriTemplate = "areas")]
public List<a1Areas> AllAreas()
{
    return context.a1Areas.ToList();
}
Run Code Online (Sandbox Code Playgroud)

我将不胜感激调试此方法.提前致谢.

找到了答案,感谢Merlyn!

在我的Global.asax文件中,我忘了注释掉处理代理和处理我的上下文对象的两行.代码如下:

void Application_BeginRequest(object sender, EventArgs e)
{
  var context = new AssignmentEntities();
  context.Configuration.ProxyCreationEnabled = false;
  HttpContext.Current.Items["_context"] = context;
}

void Application_EndRequest(object sender, EventArgs e)
{
  var context = HttpContext.Current.Items["_context"] as AssignmentEntities;
  if (context != null)
  {
    context.Dispose();
  }
}
Run Code Online (Sandbox Code Playgroud)