Так что в настоящее время я строю веб -API ASP.NET с .net5 (я работаю стажером в компании, где у нас есть только приложения .net5, к сожалению). Это не проблема, я создал еще один атрибут в моем компоненте , чтобы проанализировать строку по фактическому значению JSON.
public partial class Component
{
[...]
public string Details { get; set; }
[...]
}
< /code>
public class ComponentDTO
{
[...]
public string Details { get; set; }
public JObject ParsedDetails { get; set; }
}
< /code>
Я знаю, что он проанализирован правильно, потому что я поймаю JSON, который должен быть отправлен внутри функции моего API, как SO (плата имеет компоненты): < /p>
[HttpGet("{Ref}")]
public async Task Get(string Ref)
{
try
{
var board = await _boardService.GetOneBoard(Ref);
if (board == null)
{
return NotFound();
}
Console.WriteLine(board.Compositions.ElementAt(3).Component.ParsedDetails);
var responseBody = JsonConvert.SerializeObject(board, Formatting.Indented);
_logger.LogInformation($"Response: {responseBody}");
return Ok(board);
}
catch(Exception e)
{
Console.WriteLine(e.Message);
return StatusCode(500, "Internal Server Error");
}
}
< /code>
Итак, когда я регистрирую тело ответа, это то, что я получаю для деталей одного компонента: < /p>
"ParsedDetails": {
"core": "Cortex-A53",
"speed": "1.2 GHz",
"memory_interface": "DDR3/4"
}
< /code>
Но на чванстве или в моем браузере это то, что я получаю за тот же компонент: < /p>
"parsedDetails": {
"core": [],
"speed": [],
"memory_interface": []
}
< /code>
Вот как я пробираю свой атрибут json: < /p>
public static JObject ParseJsonDetails(string jsonString)
{
JObject parsedDetails = string.IsNullOrEmpty(jsonString) ? new JObject() : JObject.Parse(jsonString);
Console.WriteLine(parsedDetails);
return parsedDetails;
}
public async Task GetOneBoard(string reference)
{
return await _context.Boards
.Select(b => new BoardDTO
{
[...]
Compositions = b.Compositions.Select(c => new CompositionDTO
{
Component = new ComponentDTO
{
[...]
ParsedDetails = ParseJsonDetails(c.Component.Details),
}
}).ToList(),
[...]
})
.FirstOrDefaultAsync(b => b.Ref == reference);
}
Я на самом деле не знаю, что делать, так как я поймаю тело ответа прямо перед тем, как оно будет отправлено, и я не знаю, как обрабатывается значение ok (плата) , и исключение или ошибка.
Так что в настоящее время я строю веб -API ASP.NET с .net5 (я работаю стажером в компании, где у нас есть только приложения .net5, к сожалению). Это не проблема, я создал еще один атрибут в моем компоненте , чтобы проанализировать строку по фактическому значению JSON.[code]public partial class Component { [...] public string Details { get; set; } [...] } < /code> public class ComponentDTO { [...] public string Details { get; set; } public JObject ParsedDetails { get; set; } } < /code> Я знаю, что он проанализирован правильно, потому что я поймаю JSON, который должен быть отправлен внутри функции моего API, как SO (плата имеет компоненты): < /p> [HttpGet("{Ref}")] public async Task Get(string Ref) { try { var board = await _boardService.GetOneBoard(Ref);
if (board == null) { return NotFound(); } Console.WriteLine(board.Compositions.ElementAt(3).Component.ParsedDetails);
var responseBody = JsonConvert.SerializeObject(board, Formatting.Indented); _logger.LogInformation($"Response: {responseBody}");
return Ok(board); } catch(Exception e) { Console.WriteLine(e.Message); return StatusCode(500, "Internal Server Error"); } } < /code> Итак, когда я регистрирую тело ответа, это то, что я получаю для деталей одного компонента: < /p> "ParsedDetails": { "core": "Cortex-A53", "speed": "1.2 GHz", "memory_interface": "DDR3/4" } < /code> Но на чванстве или в моем браузере это то, что я получаю за тот же компонент: < /p> "parsedDetails": { "core": [], "speed": [], "memory_interface": [] } < /code> Вот как я пробираю свой атрибут json: < /p> public static JObject ParseJsonDetails(string jsonString) { JObject parsedDetails = string.IsNullOrEmpty(jsonString) ? new JObject() : JObject.Parse(jsonString); Console.WriteLine(parsedDetails); return parsedDetails; }
public async Task GetOneBoard(string reference) { return await _context.Boards .Select(b => new BoardDTO { [...] Compositions = b.Compositions.Select(c => new CompositionDTO { Component = new ComponentDTO { [...] ParsedDetails = ParseJsonDetails(c.Component.Details), } }).ToList(), [...] }) .FirstOrDefaultAsync(b => b.Ref == reference); } [/code] Я на самом деле не знаю, что делать, так как я поймаю тело ответа прямо перед тем, как оно будет отправлено, и я не знаю, как обрабатывается значение ok (плата) , и исключение или ошибка.
Использование .NET CORE WEB API Я должен создать API бронирования. Что мне делать как новичок? Я не знаю, как начать, у меня есть фундаментальные знания о языке C#, и я прочитал некоторую документацию о Framework. Итак, для выполнения моей задачи,...
Я делаю проект ASP.net Core Web API с контроллерами. Все контроллеры API вытекают из ControllerBase , который имеет метод NotFound (). Я использую этот метод из контроллеров всякий раз, когда не могу найти ресурс, который запросил клиент. Однако...
У меня есть веб-API .NET Core 6 (служба 1), который использует более старую версию WCF ASP.NET Framework 4.5.2 (служба 2), которая работает только через net.tcp. Вторая служба имеет подключение к базе данных, которая считывает и записывает...
Я установил просмотра журнала в своей защите Laravel 11 и работает как очарование. Но я хочу ограничить, кто имеет доступ к просмотру журнала в производстве.
Итак, я создаю промежуточное программное обеспечение