Port Lunr.js ke .net Core. Lunr sedikit seperti Solr, tetapi jauh lebih kecil dan tidak secerah.
Indeks pencarian yang sangat sederhana dapat dibuat menggunakan yang berikut:
var index = await Index . Build ( async builder =>
{
builder
. AddField ( " title " )
. AddField ( " body " ) ;
await builder . Add ( new Document
{
{ " title " , " Twelfth-Night " } ,
{ " body " , " If music be the food of love, play on: Give me excess of it… " } ,
{ " author " , " William Shakespeare " } ,
{ " id " , " 1 " } ,
} ) ;
} ) ;
Maka pencarian sesederhana:
await foreach ( Result result in index . Search ( " love " ) )
{
// do something with that result
}
Ini mengembalikan daftar dokumen yang cocok dengan skor seberapa dekat mereka cocok, permintaan pencarian serta metadata terkait tentang pertandingan:
new List < Result >
{
new Result (
documentReference : " 1 " ,
score : 0.3535533905932737 ,
matchData : new MatchData (
term : " love " ,
field : " body "
)
)
}
Lunr-Core adalah pustaka pencarian teks lengkap untuk digunakan dalam aplikasi kecil. Ini mengindeks dokumen dan menyediakan antarmuka pencarian sederhana untuk mengambil dokumen yang paling cocok dengan kueri teks. Ini 100% kompatibel dengan lunr.js, yang berarti bahwa file indeks yang disiapkan di server dengan lunr-core dapat digunakan pada klien menggunakan lunr.js.
Lunr-core cocok untuk aplikasi kecil yang memerlukan mesin pencari sederhana tetapi tanpa overhead mesin pencari skala penuh seperti Lucene. Kompatibilitasnya dengan Lunr.js juga membuka beberapa skenario pencarian sisi klien yang menarik.