컨트롤러 메소드의 매개변수로 직접 받기:
[HttpPost]
public IActionResult CreateBoard([FromBody] JObject data)
{
// data 객체에서 필요한 값을 추출하여 사용할 수 있습니다.
var div = data["data"]["div"].ToString();
var m_group = data["data"]["m_group"].ToString();
var m_id = data["data"]["m_id"].ToString();
var title = data["data"]["title"].ToString();
// 추출한 값들을 활용하여 원하는 동작 수행
return Ok();
}
컨트롤러 메소드의 매개변수로 직접 받기2:
[HttpPost]
public IActionResult CreateBoard([FromBody] JsonElement jsonData)
{
try
{
// Validate or process the received JSON data
if (jsonData.ValueKind != JsonValueKind.Object)
{
return BadRequest("Invalid or missing data in the request.");
}
dbConnection.Open();
// Access properties using jsonData.GetProperty("div").GetString(), etc.
string div = jsonData.GetProperty("div").GetString();
string m_group = jsonData.GetProperty("m_group").GetString();
string m_id = jsonData.GetProperty("m_id").GetString();
string title = jsonData.GetProperty("title").GetString();
// Validate or process individual properties if needed
// Insert into the database using Dapper
string query = "INSERT INTO board_tbl (div, m_group, m_id, title) VALUES (@div, @m_group, @m_id, @title)";
//dbConnection.Execute(query, new { div = div, m_group = m_group, m_id = m_id, title = title });
var parameters = new DynamicParameters();
parameters.Add("@div", div);
parameters.Add("@m_group", m_group);
parameters.Add("@m_id", m_id);
parameters.Add("@title", title);
dbConnection.Execute(query, parameters);
return Ok();
}
catch (Exception ex)
{
// Handle any exceptions
return BadRequest($"Error processing request: {ex.Message}");
}
finally
{
dbConnection.Close();
}
}
컨트롤러 메소드의 매개변수로 직접 모델 객체 받기:
public class BoardModel
{
public int idx { get; set; }
public string? div { get; set; }
public string? m_group { get; set; }
public string? m_id { get; set; }
public string? title { get; set; }
}
[HttpPost]
public IActionResult CreateBoard([FromBody] BoardModel board)
{
// board 객체를 활용하여 필요한 값들을 사용할 수 있습니다.
var div = board.div;
var m_group = board.m_group;
var m_id = board.m_id;
var title = board.title;
// 추출한 값들을 활용하여 원하는 동작 수행
try
{
// Log or print jsonData to inspect the received data
//Console.WriteLine($"Received JSON Data: {boardData}");
// Your existing logic...
var div = boardData.div;
var m_group = boardData.m_group;
var m_id = boardData.m_id;
var title = boardData.title;
dbConnection.Open();
string query = "INSERT INTO board_tbl (div, m_group, m_id, title) VALUES (@div, @m_group, @m_id, @title);";
dbConnection.Execute(query, boardData);
return Ok();
//return Ok("Data received and processed successfully!");
}
catch (Exception ex)
{
return BadRequest($"Error processing request: {ex.Message}");
}
return Ok();
}