본문 바로가기
asp.net

[.net] Dapper, ExecuteAsync

by TTTGGG 2024. 7. 30.
728x90
반응형
SMALL

Dapper 라이브러리를 사용하면 ExecuteAsync 메서드가 파라미터를 자동으로 바인딩 해줄 수 있음

Dapper는 경량 ORM(Object-Relational Mapping) 도구로, SQL 쿼리를 작성하고 실행할 때 C# 객체와 SQL 파라미터 간의 매핑을 간편하게 처리해줌

// 모델
public class UserDto
{
    public string userId { get; set; }
    public string userNm { get; set; }
    public string? userPw { get; set; }
}

// 서비스
public async Task<int> AddUserAsync(UserMaDto userMaDto)
{
    var query = @"
        INSERT INTO user (
            USER_ID, USER_NM, USER_PW
        ) VALUES (
            @userId, @userNm, '1234'
        );
    ";

    try
    {
        if (_connection.State == ConnectionState.Closed)
        {
            _connection.Open();
        }

        return await _connection.ExecuteAsync(query, userMaDto);
    }
    catch (Exception ex)
    {
        _logger.LogError(ex, "An error occurred while adding user ma data");
        throw;
    }
}

 

Dapper가 파라미터의 바인딩을 자동으로 처리해주기 때문에 추가적인 매핑 코드 없이 파라미터 바인딩이 가능함

728x90
반응형
LIST