BorgNet.ElasticSearch
1.0.0
dotnet add package BorgNet.ElasticSearch --version 1.0.0
NuGet\Install-Package BorgNet.ElasticSearch -Version 1.0.0
<PackageReference Include="BorgNet.ElasticSearch" Version="1.0.0" />
paket add BorgNet.ElasticSearch --version 1.0.0
#r "nuget: BorgNet.ElasticSearch, 1.0.0"
// Install BorgNet.ElasticSearch as a Cake Addin #addin nuget:?package=BorgNet.ElasticSearch&version=1.0.0 // Install BorgNet.ElasticSearch as a Cake Tool #tool nuget:?package=BorgNet.ElasticSearch&version=1.0.0
NuGet
使用 appsetting.json "ElasticSearch": { "Uri": "http://localhost:9200", "DefaultIndex": "news", "UserName": "elastic", "PassWord": "Sctj3LMdBn+Zg+*xNGe2", } 启用服务 没有基于BorgNet.Core 的使用场景,必须手动进行初始化,如下: 如下:
IConfiguration Configuration;
public void ConfigureServices(IServiceCollection services) { services.AddElasticSearch(configuration); } 基于BorgNet.Core的使用,只需要添加引用后配置以上appsetting.josn配置ElasticSearch节点即可 使用说明 entity 实体示例 public class News { public string Id { get; set; } public string Title { get; set; } public string Column { get; set; } public string Content { get; set; } } public class ESController: ControllerBase { private readonly IElasticClient _elasticClient; private readonly IConfiguration _configuration;
public ESController(IElasticClient elasticClient, IConfiguration configuration)
{
_elasticClient = elasticClient;
_configuration = configuration;
}
/// <summary>
/// 新增
/// </summary>
/// <param name="param"></param>
[HttpPost]
public async Task<dynamic> IndexAsync([FromBody] News param)
{
var response = await _elasticClient.IndexAsync(param, x => x.Index("news"));
return response.IsValid ? Ok(response.Id) : StatusCode(500);
}
/// <summary>
/// 查询单个
/// </summary>
/// <param name="param"></param>
[HttpGet]
public async Task<dynamic> GetAsync(string id)
{
var response = await _elasticClient.GetAsync<News>(id, x => x.Index("news"));
return response.IsValid ? Ok(response.Source) : NotFound();
}
/// <summary>
/// 更新
/// </summary>
/// <param name="id"></param>
/// <param name="value"></param>
/// <returns></returns>
[HttpPut]
public async Task<dynamic> UpdateAsync(string id, [FromBody] News value)
{
var response = await _elasticClient.UpdateAsync<News>(id, x => x.Index("news").Doc(value));
return response.IsValid ? Ok(response.Id) : StatusCode(500);
}
/// <summary>
/// 删除
/// </summary>
/// <param name="id"></param>
/// <returns></returns>
[HttpDelete]
public async Task<dynamic> DeleteAsync(string id)
{
var response = await _elasticClient.DeleteAsync<News>(id, x => x.Index("news"));
return response.IsValid;
}
/// <summary>
/// 查询
/// </summary>
/// <param name="param"></param>
[HttpPost]
public async Task<dynamic> SearchAsync(string keyword)
{
var request = new SearchRequest
{
From = 0,
Size = 20,
Query = new MatchQuery { Field = "title", Query = keyword } ||
new MatchQuery { Field = "content", Query = keyword }
};
var response = await _elasticClient.SearchAsync<News>(request);
return Ok(response.Documents);
}
}
更新中...
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net6.0
- BorgNet.Startup (>= 1.0.0)
- NEST (>= 7.17.5)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.0.0 | 189 | 1/29/2023 |