IEnumerable<IHit<Header>>
,但是.NET Core 3.0没有发出所有信息,当我返回列表中单个对象 IHit 时,比如 obj.ElementAt(0)
:
而当我返回整个列表时:{"explanation":null,"fields":null,"highlight":{},"id":"123","index":"ky","innerHits":{},"matchedQueries":[],"nested":null, "primaryTerm":null, "routing":null, "score":10.98915, "sequenceNumber":null, "sorts":[],"source":{"timeStamp":"2019-05-16T06:16:07Z", "result":"PASS","testTimeStart":"20190516141559","testTimeEnd":"20190516141607","barcode":"XXRX8762"},"type":"_doc","version":0}
甚至尝试显式调用[{"explanation":null,"fields":null,"highlight":{},"innerHits":{},"matchedQueries":[],"nested":null,"score":10.98915,"sorts":[]}]
JsonSerializer
也没能解决问题。string s = JsonSerializer.Serialize(result, typeof(IEnumerable<IHit<Header>>), obj);
总结:
WebApi 正常工作并正确地序列化返回单个对象:
public IHit<Header> Get(string id)
但当处理列表时,则不是这样。
public IEnumerable<IHit<Header>> GetAll()
我尝试使用 IEnumerable、IList 和 List
,但结果都相同!
- JsonSerializer 无论是单个对象还是列表都无法工作。