Esempio n. 1
0
        /// <summary>
        /// 指定条件で削除する
        /// </summary>
        /// <param name="itemID"></param>
        /// <returns></returns>
        public async Task <DeleteAllItemsResults> DeleteByConditions(DeleteAllItemsRequest <DataType> req)
        {
            return(await ServiceHelperFunctions.DoReyry(async() =>
            {
                L.Info(() => $"Start DeleteALL ");

                var r = req.ToDeleteAllItemsRequestSend();

                r.ApiKey = serviceConfig.ApiKey;
                r.ApiVersion = serviceConfig.ApiVersion;
                r.PhysicalDelete = req.PhysicalDelete;

                // 検索条件を設定する
                r.View = MakeSendViewData(req?.View);

                HttpResponseMessage response = await client.PostAsJsonAsync($"/api/items/{SiteId}/bulkdelete", r);
                // API呼び出しを実行
                var targetData = await response.Content.ReadAsAsync <DeleteAllItemsResults>();

                // 実行成功判定
                if (true == response.IsSuccessStatusCode &&
                    targetData?.StatusCode == (int)StatusCode.OK
                    )
                {
                    return targetData;
                }

                // 実行エラー発生
                throw new ChangeItemResultsException(targetData);
            }, this.serviceConfig.RetryCount));
        }
Esempio n. 2
0
        /// <summary>
        /// アイテムを一括削除する
        /// </summary>
        /// <param name="itemID"></param>
        /// <returns></returns>
        public async Task <DeleteAllItemsResults> DeleteALL(bool PhysicalDelete = false)
        {
            var rqe = new DeleteAllItemsRequest <DataType>();

            rqe.All            = true;
            rqe.PhysicalDelete = PhysicalDelete;

            return(await DeleteByConditions(rqe));
        }
 public void Delete(DeleteAllItemsRequest request)
 { 
     Repo.Clear();
 }