ASP.NET Core rest API, который возвращает очень большое число ⇐ C#
-
Гость
ASP.NET Core rest API, который возвращает очень большое число
Мой проект работает на .NET 8 и в качестве отправной точки использует шаблон VS2022 «ASP.NET Core Web API».
Учитывая следующий код и application/json в качестве типа контента:
с использованием Microsoft.AspNetCore.Mvc; использование System.Numerics; пространство имен MyService.Controllers { [Апиконтроллер] [Маршрут("api/[контроллер]/[действие]")] общедоступный класс MyController: ControllerBase { частный только для чтения ILogger _logger; общедоступный MyController (регистратор ILogger) { _logger = регистратор; } [HttpGet] общедоступная строка GetSupply() { вернуть «9474488248131986559259619»; } [HttpGet] общедоступный BigInteger GetSupply2() { return BigInteger.Parse("9474488248131986559259619"); } } } Вызов GetSupply работает должным образом, и тело ответа содержит
"9474488248131986559259619" Однако, поскольку это число, я хочу избавиться от кавычек, чтобы ответ выглядел следующим образом:
9474488248131986559259619 Поскольку я не знаю, насколько большим будет число, я использую System.Numerics.BigInteger.
GetSupply2 возвращает этот тип данных, но в результате получается такой ответ
{ «isPowerOfTwo»: ложь, «isZero»: ложь, «isOne»: ложь, «isEven»: ложь, "знак": 1 } это не входит в мои намерения.
Итак, как мне этого добиться?
Мой проект работает на .NET 8 и в качестве отправной точки использует шаблон VS2022 «ASP.NET Core Web API».
Учитывая следующий код и application/json в качестве типа контента:
с использованием Microsoft.AspNetCore.Mvc; использование System.Numerics; пространство имен MyService.Controllers { [Апиконтроллер] [Маршрут("api/[контроллер]/[действие]")] общедоступный класс MyController: ControllerBase { частный только для чтения ILogger _logger; общедоступный MyController (регистратор ILogger) { _logger = регистратор; } [HttpGet] общедоступная строка GetSupply() { вернуть «9474488248131986559259619»; } [HttpGet] общедоступный BigInteger GetSupply2() { return BigInteger.Parse("9474488248131986559259619"); } } } Вызов GetSupply работает должным образом, и тело ответа содержит
"9474488248131986559259619" Однако, поскольку это число, я хочу избавиться от кавычек, чтобы ответ выглядел следующим образом:
9474488248131986559259619 Поскольку я не знаю, насколько большим будет число, я использую System.Numerics.BigInteger.
GetSupply2 возвращает этот тип данных, но в результате получается такой ответ
{ «isPowerOfTwo»: ложь, «isZero»: ложь, «isOne»: ложь, «isEven»: ложь, "знак": 1 } это не входит в мои намерения.
Итак, как мне этого добиться?
Мобильная версия