public APIController()
{
db = new ApplicationDbContext();
}
ApplicationDbContext db;
[HttpGet]
public List<Category> GetCategories()s
{
return db.Categories.ToList();
}
我正在尝试从Web API获取类别。我正在使用AJAX,但它提供了500个例外。
答案 0 :(得分:0)
由于连接字符串正确且所有设置均正确,所以我看到的代码中存在2个可能的问题:
1-您的Api控制器被命名为APIController,这是.NET Api中的保留字
2-您的get服务正在尝试从可能与父对象相关的类别中返回完整的Object,并且父对象与其他相关对象相关,从而导致返回整个数据库。
我建议像这样在lambda中使用select new
:
[HttpGet]
public List<Category> GetCategories()s
{
return db.Categories.Select(a => new { a.Name, a.ID, a.Description }).ToList();
}
这样可以避免查询整个数据库。