我有一个Angularjs前端和一个Web API后端。
当返回的对象包含列表时,我从方法中得到错误500.当列表不存在时没有问题:
如果我返回这样的对象,则没有错误:
var myObj = new { name1 = value1, name2 = value2};
return myObj;
但是对于以下我得到了错误500:
var q = from p in db.SomeThing select p;
var MyObj = new { name1 = value1, name2 = value2, name3 = q.ToList()};
错误500:
var q = from p in db.SomeThing select p;
var MyObj = new { name1 = value1, name2 = value2, name3 = q};
可能出现什么问题?
答案 0 :(得分:2)
从db.SomeThing
返回的实体具有导航属性,这些属性在序列化期间执行时会导致异常。尝试选择匿名对象而不是p
,看看是否能解决您的问题。
var q = from p in db.SomeThing
select new {
property1 = p.property1,
property2 = p.property2,
//other properties
};
答案 1 :(得分:-1)
错误在您的LINQ查询中 - 而不是代码。您需要启用断点 - 选择Debug / Exceptions ...并检查项[] Common language runtime
。然后,当程序抛出异常时,它将在异常行处中断。您将了解如何修复查询。
或者你可以在这里发布你的例外。
快乐的编码。