C# 从web api响应中删除$id
我有一个web api 5.0,它返回一个相当基本的对象的dto。这是上课时间C# 从web api响应中删除$id,c#,asp.net-core-webapi,c#-5.0,C#,Asp.net Core Webapi,C# 5.0,我有一个web api 5.0,它返回一个相当基本的对象的dto。这是上课时间 [JsonObject(IsReference = false)] public class BillToReturnDto { public string id { get; set; } public string organizationId { get; set; } } 但是当我返回它的列表时,它会像这样返回 { “$id”:“1”, “$values”:[ { “$id”:“2”
[JsonObject(IsReference = false)]
public class BillToReturnDto
{
public string id { get; set; }
public string organizationId { get; set; }
}
但是当我返回它的列表时,它会像这样返回
{
“$id”:“1”,
“$values”:[
{
“$id”:“2”,
“id”:“rvKLS178QWyWJu0tgESTnA”,
“organizationId”:“ujoF624LSVyyQFapjauyAw”,
},
{
“$id”:“2”,
“id”:“xvWfrRQWyyG0tgEd53dW”,
“organizationId”:“ujoF624LSVyyQFapjauyAw”,
}
]
}
如何删除这些ID?我尝试了IsReference false,您可以看出这是徒劳的
更新:
以下是控制器方法:
public async Task<ActionResult> Get()
{
var userId = User.FindFirst("Id").Value;
var accessToken = await _userService.GetAccessToken(Convert.ToInt32(userId));
var bills = await _shoppingService.GetBills(accessToken);
var billsToReturn = _mapper.Map<List<BillToReturnDto>>(bills.bills);
return Ok(billsToReturn);
}
公共异步任务Get()
{
var userId=User.FindFirst(“Id”).Value;
var accessToken=await_userService.GetAccessToken(Convert.ToInt32(userId));
var bills=wait_shoppingService.GetBills(accessToken);
var billsToReturn=_mapper.Map(bills.bills);
返回Ok(billsToReturn);
}
startup.cs中的这一行可能会在我的案例中产生问题:
services.AddControllers()
.AddJsonOptions(options =>
{
options.JsonSerializerOptions.ReferenceHandler = ReferenceHandler.Preserve;
});
删除.AddJsonOptions([…]),看看它是否适合您。请向我们展示返回result@IbraHimM.Nada我已经用asp.neet core更新了ThxyYou?或者mvc只是为了确保使用新的5.0,它本质上是core,但他们已经从它的名字中删除了core最近的是Core3.X