Skip to content

Repository files navigation

NugetExamine BuildBuild Status

Examine


❤️ If you use and like Examine please consider becoming a GitHub Sponsor ❤️

What is Examine?

Examine allows you to index and search data easily and wraps the Lucene.Net indexing/searching engine. Lucene is super fast and allows for very fast searching even on very large amounts of data. Examine is very extensible and allows you to configure as many indexes as you like and each may be configured individually. Out of the box Examine gives you a Lucene based index implementation as well as a Fluent API that can be used to search for your data.

Installation

via Nuget

PM> Install-Package Examine

Quick start

Tip: IExamineManager is the gateway to working with examine. It's a singleton service that is registered in DI.

  1. Configure Services and create an index

    // Adds Examine Core servicesservices.AddExamine();// Create a Lucene based indexservices.AddExamineLuceneIndex("MyIndex");
  2. Populate the index

    if(examineManager.TryGetIndex("MyIndex",outvarmyIndex)){// Add a "ValueSet" (document) to the index // which can contain any data you want.myIndex.IndexItem(newValueSet(Guid.NewGuid().ToString(),//Give the doc an ID of your choice"MyCategory",//Each doc has a "Category"newDictionary<string,object>(){{"Name","Frank"},{"Address","Beverly Hills, 90210"}}));}
  3. Search the index

    varsearcher=myIndex.Searcher;// Get a searchervarresults=searcher.CreateQuery()// Create a query.Field("Address","Hills")// Look for any "Hills" addresses.Execute();// Execute the search

Information and downloads for Examine releases

Documentation

Tip: There are many unit tests in the source code that can be used as Examples of how to do things. There is also a test web project that has plenty of examples of how to configure indexes and search them.

Copyright & Licence

© 2021 by Shannon Deminick

This is free software and is licensed under the Microsoft Public License (Ms-PL)

Flat vector created by freepik - www.freepik.com

About

A .NET indexing and search engine powered by Lucene.Net

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages