如果满足条件,则跳过序列化列表元素(Newtonsoft)

时间:2019-12-20 11:50:37

标签: c# asp.net list json.net

我正在使用Newtonsoft进行序列化,我想跳过序列化列表中特定元素的过程。

说,我有一堂课

public class Car
{
    public PropertyA A {get; set;}
    public PropertyB B {get; set;}
    public bool ShouldSerializeCar {get; set;}
}

我有一个Action方法,它返回List<Car>作为响应,如:

    [HttpGet("cars", Name = "GetCars")]
    [ProducesResponseType(typeof(IEnumerable<Car>), 200)]
    public async Task<IActionResult> GetCars()
    {
        var cars = new List<Car>();
        //Some code here that generates a list of Car//
        return cars;
    }

当Newtonsoft序列化响应时,是否可以跳过序列化ShouldSerializeCar为假的列表项?

请注意,除Newtonsoft之外,我无法使用其他库,因为该库已在整个项目中使用。

1 个答案:

答案 0 :(得分:2)

为什么不依靠Newtonsoft来执行此操作,为什么在序列化列表之前不过滤列表?

代码:

a1