Ответ 1
Прежде всего, вы можете использовать IEnumerable<Order>
или IEnumerable<object>
как возвращаемый тип вместо JsonResult
и вернуть только orderRepository.GetAll()
. Я рекомендую вам прочитать статью от дополнительной информации.
О другой ошибке с Bad Gateway. Попытайтесь добавить Newtonsoft.Json
в последней версии 8.0.2 к зависимостям в package.json
и использовать use
services.AddMvc()
.AddJsonOptions(options => {
options.SerializerSettings.ReferenceLoopHandling =
Newtonsoft.Json.ReferenceLoopHandling.Ignore;
});
Кстати, можно воспроизвести ошибку "HTTP Error 502.3 - Bad Gateway", которую вы описываете, если я просто установил точку останова на оператор возврата рабочего кода и подожду достаточно долго. Таким образом, вы увидите сообщение об ошибке "HTTP Error 502.3 - Bad Gateway" очень скоро во многих распространенных ошибках.
Вы можете рассмотреть более полезные варианты сериализации. Например
services.AddMvc()
.AddJsonOptions(options => {
// handle loops correctly
options.SerializerSettings.ReferenceLoopHandling =
Newtonsoft.Json.ReferenceLoopHandling.Ignore;
// use standard name conversion of properties
options.SerializerSettings.ContractResolver =
new CamelCasePropertyNamesContractResolver();
// include $id property in the output
options.SerializerSettings.PreserveReferencesHandling =
PreserveReferencesHandling.Objects;
});