无法从 table dbo.AspNetUsers 而不是 $ref 获取所有具有重复外键的 ApplicationUser
Can't get all ApplicationUser with duplicate foreign key from table dbo.AspNetUsers instead $ref
事实证明,当我调试它直到控制器结束时在后端正确显示所有结果,但是当它在 Postman 上显示结果时,却没有显示具有重复键的结果。
这是方法:
public HttpActionResult getUsers (){
var users = context.Users.ToList();
return Ok(users);
}
这是结果:
[user:{
{
"Email":...,
"EmailConfirmed":.....
...
"ForeignKeyColumn": 123
},
user1:{
{
"$ref": "6"
}}]
感谢大家的评论,我自己找到了答案。
问题出在 WEB API json 格式化程序上,我有这个代码:
var json = config.Formatters.JsonFormatter;<br/>
json.SerializerSettings.PreserveReferencesHandling = Newtonsoft.Json.PreserveReferencesHandling.Objects;<br/>
config.Formatters.Remove(config.Formatters.XmlFormatter);
然后我为此进行了更改,并且效果很好!!!
var json = GlobalConfiguration.Configuration.Formatters.JsonFormatter;<br/>
json.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();<br/>
json.SerializerSettings.ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore;<br/>
我希望这对以后的人有所帮助!
事实证明,当我调试它直到控制器结束时在后端正确显示所有结果,但是当它在 Postman 上显示结果时,却没有显示具有重复键的结果。
这是方法:
public HttpActionResult getUsers (){
var users = context.Users.ToList();
return Ok(users);
}
这是结果:
[user:{
{
"Email":...,
"EmailConfirmed":.....
...
"ForeignKeyColumn": 123
},
user1:{
{
"$ref": "6"
}}]
感谢大家的评论,我自己找到了答案。
问题出在 WEB API json 格式化程序上,我有这个代码:
var json = config.Formatters.JsonFormatter;<br/>
json.SerializerSettings.PreserveReferencesHandling = Newtonsoft.Json.PreserveReferencesHandling.Objects;<br/>
config.Formatters.Remove(config.Formatters.XmlFormatter);
然后我为此进行了更改,并且效果很好!!!
var json = GlobalConfiguration.Configuration.Formatters.JsonFormatter;<br/>
json.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();<br/>
json.SerializerSettings.ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore;<br/>
我希望这对以后的人有所帮助!