/// <summary> /// DELETE api/indexes/id /// </summary> /// <param name="id"></param> /// <returns></returns> public async Task <HttpResponseMessage> Delete(string id) { var result = await _managementClient.DeleteIndexAsync(id); if (!result.IsSuccess) { return(Request.CreateResponse(result.StatusCode, result)); } return(Request.CreateResponse(HttpStatusCode.OK, result)); }
// delete the index. public async Task DeleteIndex() { var result = await managementClient.DeleteIndexAsync(Index); }
/// <summary> /// インデックス作成 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private async void button3_Click(object sender, EventArgs e) { flg = false; //前にあったデータは削除 for (int i = 0; i < fileNames.Length; i++) { var connection = ApiConnection.Create("datest01", "A53D975119F80AA1D75895645A5234BE"); var client = new IndexManagementClient(connection); client.DeleteIndexAsync("index" + i).Wait(); connection.Execute(new ApiRequest("datasources/testcontainer" + i, HttpMethod.Delete), CancellationToken.None).Wait(); connection.Execute(new ApiRequest("indexers/indexer" + i, HttpMethod.Delete), CancellationToken.None).Wait(); //データソース設定 connection.Execute(new ApiRequest("datasources", HttpMethod.Post, new { name = "source" + i, type = "azureblob", credentials = new { connectionString = "DefaultEndpointsProtocol=https;AccountName=testda01;AccountKey=Yh3sa6UyVcg8puiiBu1EYlesMSJLX45ZFwv0Ws8fxDjCin+5INxmMOBjwN0EaAN0TvFy92gjdfHHmas7lnpEzw==" }, container = new { name = "testcontainer" + i } }), CancellationToken.None).Wait(); if (fileNames[i].Contains(".csv")) { //インデックス作成 connection.Execute(new ApiRequest("indexes", HttpMethod.Post, new { name = "index" + i, fields = new List <F> { new F { name = "metadata_storage_name", type = "Edm.String", searchable = true, sortable = true, facetable = true, filterable = true }, new F { name = "Id", type = "Edm.String", searchable = true, key = true }, new F { name = "Name", type = "Edm.String", searchable = true, }, new F { name = "Age", type = "Edm.String", searchable = true, } } }), CancellationToken.None).Wait(); //インデクサ設定(ヘッダーのみ) connection.Execute(new ApiRequest("indexers", HttpMethod.Post, new { name = "indexer" + i, dataSourceName = "source" + i, targetIndexName = "index" + i, parameters = new { configuration = new { parsingMode = "delimitedText", firstLineContainsHeaders = true } } }), CancellationToken.None).Wait(); //インデクサ作成(ヘッダー以外のみ) connection.Execute(new ApiRequest("indexers", HttpMethod.Post, new { name = "indexer" + i, dataSourceName = "source" + i, targetIndexName = "index" + i, parameters = new { configuration = new { parsingMode = "delimitedText", delimitedTextHeaders = "Id,Name,Age", } } }), CancellationToken.None).Wait(); connection.Execute(new ApiRequest("indexers/indexer" + i + "/run", HttpMethod.Post), CancellationToken.None).Wait(); } else { //インデックス作成 connection.Execute(new ApiRequest("indexes", HttpMethod.Post, new { name = "index" + i, fields = new List <F> { new F { name = "metadata_storage_content_md5", type = "Edm.String", searchable = true, sortable = true, facetable = true, filterable = true, key = true }, new F { name = "metadata_storage_name", type = "Edm.String", searchable = true, sortable = true, facetable = true, filterable = true, }, new F { name = "content", type = "Edm.String", searchable = true, sortable = true, facetable = true, filterable = true } } }), CancellationToken.None).Wait(); //インデクサ設定 connection.Execute(new ApiRequest("indexers", HttpMethod.Post, new { name = "indexer" + i, dataSourceName = "source" + i, targetIndexName = "index" + i, }), CancellationToken.None).Wait(); connection.Execute(new ApiRequest("indexers/indexer" + i + "/run", HttpMethod.Post), CancellationToken.None).Wait(); } } await Task.Run(() => Thread.Sleep(5000)); MessageBox.Show("インデックスの設定が終了したよ"); flg = true; }