lucene.net.linq

___ qstnhdr ___ Unterschied zwischen LinqToLucene und Lucene.Net.Linq ___ answer29371715 ___

Mit diesem Code:

%Vor%

Sie könnten mit Dateisystem und nicht mit Systemspeicher arbeiten.

    
___ answer25313044 ___

LINQ zu Lucene scheint inaktiv zu sein. Das letzte Commit zum Zeitpunkt des Schreibens war im Oktober 2012 und der letzte Diskussionspost, der fragt, ob das Projekt aktiv ist, ist seit dem gleichen Zeitraum unbeantwortet.

LINQ to Lucene hat eine enge Verbindung zu Entity Framework, daher scheint mir, dass das Projekt Daten von EF für die Freitextsuche indexieren soll.

Lucene.Net.Linq ist ein völlig eigenständiges Projekt, das ich 2012 begonnen habe und aktiv weitergeführt habe. Dieses Projekt hat keine Verbindung zu EF oder anderen Bibliotheken. Es hängt nur von Lucene.Net, Common.Logging für die Protokollierung und Remotion.Linq ab, um bei der Analyse und Übersetzung von LINQ-Abfragen zu helfen. Ich habe ursprünglich die Möglichkeit untersucht, zu LINQ zu Lucene beizutragen, fand aber, dass die enge Kopplung mit EF und einige andere Annahmen die Bibliothek für meine Bedürfnisse ungeeignet machten.

LINQ zu Lucene Nachteile:

  1. Nicht verfügbar in NuGet
  2. Nicht aktiv gepflegt
  3. Sehr eingeschränkt in dem, was Sie in eine %code% -Klausel eingeben können
  4. Gekoppelt an EF, ob Sie es wollen oder nicht

Lucene.Net.Linq Profis:

  1. Aktiv gepflegt
  2. Pakete (und Symbole!), die in NuGet veröffentlicht wurden
  3. Besseres Verständnis komplexer Fragen
  4. Fließende und Attribut-APIs zum Zuordnen von Eigenschaften zu Feldern und Kontrollanalyse, Speicherung und Indizierung

Lucene.Net.Linq Nachteile:

  1. Dokumentation könnte besser sein
  2. Nur eine Handvoll Beiträge außerhalb meines eigenen
  3. Unklare Leistung vs Vanille Lucene.Net (nicht viel Leistungstest wurde durchgeführt)

Die Dokumentation besteht aus dem Projekt README und Beispielcode im Unit-Test-Projekt.

Lucene.Net.Linq verfügt nicht über Erweiterungsmethoden für jede Abfrage, die Lucene.Net nativ unterstützt. Es bietet jedoch eine Escape-Luke, in der Sie Ihre eigene %code% :

übergeben können %Vor%

Und es unterstützt die Suche jedes indizierten Feldes mit Fuzzy-Match:

%Vor%

Und es unterstützt einfache Übereinstimmung mit %code% und %code% :

%Vor%

Beachten Sie, dass die Bedeutung von %code% davon abhängt, wie ein bestimmtes Feld indiziert wird. Wenn das Feld als Schlüsselwort indexiert wird, wird die exakte Übereinstimmung wirksam. Wenn das Feld in Token umgewandelt, in Stemmen umgewandelt, in Kleinbuchstaben konvertiert wird usw., dann würde %code% mit jedem Begriff im Feld übereinstimmen.

    
___ qstntxt ___
  1. Sind die LinqToLucene und die Lucene.Net.Linq Projekte anders?
  2. Was sind die Vor- und Nachteile von jedem von ihnen?
  3. Seit ich Lucene.Net.Linq gefunden habe, um in letzter Zeit relativ zu LinqToLucene aktualisiert zu werden, und es in nuget verfügbar ist, möchte ich es in meinem einfachen Projekt verwenden, aber ich stieß auf Mangel an Dokumentation und ich kann nicht finden, wie ich kann Verwenden Sie Lucene erweiterte Abfragen mit diesem Paket wie möglich in LinqToLucene zum Beispiel:

    %Vor%

    Wenn diese Erweiterungsfunktionen nicht verfügbar sind, worauf zielt dieses Projekt ab?

  4. Wenn es nicht der Punkt ist, wie kann ich erweiterte Abfragen in LINQ zu Lucene.Net verwenden?
___ tag123linqtolucene ___ hilf uns dieses Wiki zu bearbeiten ___ tag123lucenetlinq ___ Lucene.Net.Linq ist eine .net-Bibliothek, mit der LINQ-Abfragen nativ in einem Lucene.Net-Index ausgeführt werden können. ___
2
Antworten

Unterschied zwischen LinqToLucene und Lucene.Net.Linq

Sind die LinqToLucene und die Lucene.Net.Linq Projekte anders? Was sind die Vor- und Nachteile von jedem von ihnen? Seit ich Lucene.Net.Linq gefunden habe, um in letzter Zeit relativ zu LinqToLucene aktualisiert zu werden, und es in nu...
14.08.2014, 04:38