コード例 #1
0
        /// <summary>
        /// <paramref name="query"/>를 비동기 방식으로 실행하여, 결과 셋을 <see cref="Task{DataTable}"/>로 반환합니다.
        /// </summary>
        public static Task <DataTable> ExecuteDataTableAsync(this NpgsqlDatabase db,
                                                             string query,
                                                             int firstResult,
                                                             int maxResult,
                                                             params IAdoParameter[] parameters)
        {
            var cmd = db.GetNpgsqlCommand(query);

            return
                (ExecuteDataTableAsync(db, cmd, firstResult, maxResult, parameters)
                 .ContinueWith(task => {
                With.TryAction(() => cmd.Dispose());
                return task;
            },
                               TaskContinuationOptions.ExecuteSynchronously)
                 .Unwrap());
        }