Jaki jest najlepszy sposób na wykorzystanie wyszukiwanie pełnotekstowe z EFCoreFull-Text Search z Entity Framework rdzenia
Na razie mam dwa podejścia
podejście # 1
var entities = this.DbContext.Example
.FromSql("fullText_Proc {0}, {1}", searchTermParameter, topParameter);
return entities.AsNoTracking().ToList();
Tutaj Zmuszono do utworzenia proc, ponieważ FromSql ignoruje klauzulę WHERE.
Podejście nr 1
Tworzenie polecenia i wykonaj mapowanie ręcznie
using (var command = this.DbContext.Database.GetDbConnection().CreateCommand())
{
command.CommandText = "SELECT ... WHERE CONTAINS("Name", @p1)";
command.CommandType = CommandType.Text;
var parameter = new SqlParameter("@p1",...);
this.DbContext.Database.OpenConnection();
using (var result = command.ExecuteReader())
{
while (result.Read())
{
.... // Map entity
}
}
}
Użyłem waszego drugiego podejścia do pobierania wyników w rankingu z CONTAINSTABLE, którego nie można obecnie uzyskać za pomocą FromSql. Dzięki. – c0y0teX