我是Web API的新手。我只想在一些方法调用上返回一些List,其动词是HttpGet。
在浏览器中提出请求后,我收到以下错误:
Web API错误:' ObjectContent`1'类型无法序列化内容类型' application / xml的响应正文;字符集= UTF-8'
我已经搜索了解决方案,最后,
DBContextObjName.Configuration.ProxyCreationEnabled = false;
是解决错误的那个。
但我只是想知道,这是如何解决错误的。我的意思是解决方案和错误的方式有关。
我可以知道,对它的解释。所以我可以更清楚地理解这一点。
提前致谢。
答案 0 :(得分:2)
根据MSDN DbContextConfiguration.ProxyCreationEnabled Property
获取或设置一个值,指示框架是否会 每当创建动态生成的代理类的实例时 创建实体类型的实例。请注意,即使代理 使用此标志启用创建,代理实例仅为 为满足代理要求的实体类型创建。 默认情况下启用代理创建。
知道如果你看一些有类似问题的人
Failed to serialize the response in Web API with Json
failed to serialize the response in Web API
当格式化程序尝试序列化时,动态生成的代理类无法序列化。
有些案例提到了与导航属性相关的循环引用。