У меня есть конечная точка OData (протестирована с обоими. NET Core и. NET 4.7.1), которая выставляет 2500 объектов, встроенных в память. Вызов Get OData занимает 30-40 секунд. Эквивалентный ASP. NET вызов WEB API, который возвращает raw JSON, занимает 1 секунду. Такое ощущение, что платформа OData не так эффективна, как Json. NET. Любые предложения о том, как улучшить производительность?
Очень медленно.
[EnableQuery(EnsureStableOrdering = false)]
public ActionResult<IEnumerable<Person>> Get()
{
var list = new List<Person>();
for (var i = 0; i < 2500; i++)
{
list.Add(new Person());
}
return list;
}
Очень быстро.
public IHttpActionResult Get()
{
var list = new List<Person>();
for (var i = 0; i < 2500; i++)
{
list.Add(new Person());
}
var json = JsonConvert.SerializeObject(list);
return Ok(json);
}