В asp.net Web API2, когда вы создаете асинхронную контроллер веб-интерфейс для модели с рамкой объекта, по умолчанию первого метод в новом контроллере, как это:Почему метод GET на веб-API asp.net возвращает IQueryable?
public IQueryable<MyModel> GetMyModel()
{
return db.MyModel;
}
Выход JSON из этого метода является всего лишь массивом всех записей MyModel
. Между тем, все другие методы для POST, PUT, GET (int id) и DELETE отмечены как async
и возвращают Task<IHttpActionResult>
. Почему это не первый метод GET в том же стиле, что-то вроде этого:
public async Task<IHttpActionResult> GetMyModel()
{
return Ok(await db.MyModel.ToArrayAsync());
}
Я попробовал это, и он производит идентичный вывод в формате JSON.