From 63dfbd87627f09c4bed3d9e15a81833548f84cf2 Mon Sep 17 00:00:00 2001 From: Damien Date: Tue, 25 Feb 2025 03:11:59 -0500 Subject: [PATCH] fix: add document --- README.md | 1 + meilisearch.NET.example/Program.cs | 38 ++++++++++++++++++++++++++- meilisearch.NET.example/document.cs | 8 ++++++ meilisearch.NET/MeiliSearchService.cs | 1 + 4 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 meilisearch.NET.example/document.cs diff --git a/README.md b/README.md index d5f6aa2..80b085f 100644 --- a/README.md +++ b/README.md @@ -13,6 +13,7 @@ MeiliSearch .NET Integration is a NuGet package that seamlessly embeds MeiliSear - [x] **Embedded MeiliSearch**: Integrate MeiliSearch directly into your application. - [x] **Manage Indexes**: Manage your indexs and documents through the SDK, you can still use the default Meilisearch SDK. +- [x] **Add Documents**: Ability to add documents and have validation on if the index is loaded. - [x] **Background Process Management**: Automatically handles the lifecycle of the MeiliSearch process. - [x] **Health Monitoring**: Regular checks on the health of the MeiliSearch instance to ensure it stays running. - [x] **API Key Management**: An API key is automatically regenerated every time the MeiliSearch service starts unless one is specified in the configuration. diff --git a/meilisearch.NET.example/Program.cs b/meilisearch.NET.example/Program.cs index bcc9149..b04c91f 100644 --- a/meilisearch.NET.example/Program.cs +++ b/meilisearch.NET.example/Program.cs @@ -3,6 +3,7 @@ using System.Net; using System.Threading.Tasks; using meilisearch.NET; using meilisearch.NET.Configurations; +using meilisearch.NET.example; using meilisearch.NET.Extensions; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; @@ -61,7 +62,42 @@ public class test Task.Delay(1000).Wait(); // Wait for 1 second before checking again } - service.CreateIndex("test"); + service.CreateIndex("test"); + service.AddDocument("test", new document() + { + Id = Guid.NewGuid(), + message = "Hello, Meilisearch!" + }); + service.AddDocument("test", new document() + { + Id = Guid.NewGuid(), + message = "Hello, Meilisearch!" + }); + service.AddDocument("test", new document() + { + Id = Guid.NewGuid(), + message = "Hello, Meilisearch!" + }); + service.AddDocument("test", new document() + { + Id = Guid.NewGuid(), + message = "Hello, Meilisearch!" + }); + service.AddDocument("test", new document() + { + Id = Guid.NewGuid(), + message = "Hello, Meilisearch!" + }); + service.AddDocument("test", new document() + { + Id = Guid.NewGuid(), + message = "Hello, Meilisearch!" + }); + service.AddDocument("test", new document() + { + Id = Guid.NewGuid(), + message = "Hello, Meilisearch!" + }); _logger.LogInformation("Test service initialized."); } } diff --git a/meilisearch.NET.example/document.cs b/meilisearch.NET.example/document.cs new file mode 100644 index 0000000..ddeb4de --- /dev/null +++ b/meilisearch.NET.example/document.cs @@ -0,0 +1,8 @@ +using meilisearch.NET.Interfaces; + +namespace meilisearch.NET.example; + +public class document:IDocument +{ + public string message { get; set; } +} \ No newline at end of file diff --git a/meilisearch.NET/MeiliSearchService.cs b/meilisearch.NET/MeiliSearchService.cs index 3ba73ed..964614f 100644 --- a/meilisearch.NET/MeiliSearchService.cs +++ b/meilisearch.NET/MeiliSearchService.cs @@ -40,6 +40,7 @@ public class MeilisearchService:IDisposable _documentCollection.CollectionChanged += CheckIfNeedDocumentSync; StartMeilisearch().Wait(); EnsureRepositoryIndexExists().Wait(); + _logger.LogTrace("API Key: " + _apiKey); }