public async Task<QueryResult> AddContactRequest(ContactRequest request, CancellationToken cancellationToken) { Handle(cancellationToken); if (request == null) throw new ArgumentNullException(nameof(request)); if (string.IsNullOrEmpty(request.Id) || string.IsNullOrEmpty(request.Message) || string.IsNullOrEmpty(request.Name) || string.IsNullOrEmpty(request.UserName) || string.IsNullOrEmpty(request.Target?.Id)) throw new InvalidOperationException(nameof(request)); var count = await Connection.ExecuteAsync( $"INSERT INTO {Table} (Id, Message, Name, UserName, Target) VALUES(@Id, @Message, @Name, @UserName, @Target)", new { request.Id, request.Message, request.Name, request.UserName, Target = request.Target.Id }); return QueryResult.Success(count); }
public async Task<QueryResult> UpdateContactRequest(ContactRequest request, CancellationToken cancellationToken) { Handle(cancellationToken); if (request == null) throw new ArgumentNullException(nameof(request)); if (string.IsNullOrEmpty(request.Id) || string.IsNullOrEmpty(request.Message) || string.IsNullOrEmpty(request.UserName) || string.IsNullOrEmpty(request.Name) || string.IsNullOrEmpty(request.Target?.Id)) throw new InvalidOperationException(nameof(request)); var count = await Connection.ExecuteAsync( $"UPDATE {Table} SET Message=@Message,UserName=@UserName,Name=@Name,Target=@Target WHERE Id=@Id", new { request.Id, }); return QueryResult.Success(count); }
public async Task<QueryResult> DeleteContactRequest(ContactRequest request, CancellationToken cancellationToken) { Handle(cancellationToken); if (request == null) throw new ArgumentNullException(nameof(request)); if (string.IsNullOrEmpty(request.Id) || string.IsNullOrEmpty(request.Message) || string.IsNullOrEmpty(request.Name) || string.IsNullOrEmpty(request.UserName) || string.IsNullOrEmpty(request.Target?.Id)) throw new InvalidOperationException(nameof(request)); var count = await Connection.ExecuteAsync($"DELETE FROM {Table} WHERE Id=@Id AND Target=@Target", new { request.Id, Target = request.Target.Id }); return QueryResult.Success(count); }