Dotnet Lucene Search is a Blazor-based web application that exposes full text search capability built on top of the Lucene.Net search engine library. The application was built to fill the void in tutorials focused on command line interaction with Lucene and Blazor web apps focused on database persistence without full text search capabilities.
The repository has 5 sub-projects, each representing a stage of the application buildout, correlating with the steps used to build out the Azure Cognitive search app in Microsoft's online tutorial.
- Basic Search. Creation of the basic search web application using Lucene.Net with waffle text source data seeded using the Bogus synthetic test data library.
- Results Paging. Order of magnitude increase in generated records and introduction of paging function to deal with paginated results.
- AutoComplete. Uses the Lucene.Net.Suggest library in conjunction with Chris Saintly's Blazored.Typeahead control to provide auto-complete functionality over the indexed waffle text data.
- Faceting. Includes dedicated indexing for 2 facets (scholars and universities) and the ability to drill down on these 2 facets from the user interface.
- Highlighting. Employs a simple utility function to highlight the searched text in the title and body of the returned Waffletext results.
- Web-based full-text search on top of Lucene.Net search engine library
- Autogeneration of waffle text records using Bogus data generator
- Pagination of large result sets
- Autocomplete lookup across the entire indexed dataset
- Faceted search qualification across multiple facets
- Highlighting of search terms in returned results
Some starter guides for using Lucene.Net and ideas for this project are attributable to the sources below.