Replies: 4 comments 12 replies
|
Hi @nandor23! Thank you for being here, this is a really exciting project and one we'd love to support you with. A few thoughts:
|
If that works (and it should), I don't see any problems with it. You're making a framework to machine generate the SQL so it doesn't need to be quite as "pretty" as if one were to hand-write it.
They currently do not, but it's possible we could do that if it's a blocker for you. The
I'm not sure I follow what you're getting at here?
For the |
|
I've implemented everything from Full Text Search except Byte Offsets and Proximity Array. Unit and integration tests are complete as well. Once the README is ready, I'll release version There's a DX issue: // Works without any issues
var products = dbContext
.Products
.Where(p => EF.Functions.MatchConjunction(p.Description, "with"))
.Select(p => new { p.Id, Score = EF.Functions.Score(p.Id) })
.ToList();
// translates to
SELECT p.id AS "Id", paradedb.score(p.id) AS "Score"
FROM products AS p
WHERE p.description &&& 'with'// Exception is thrown
var products = dbContext
.Products
.Select(p => new { p.Id, Score = EF.Functions.Score(p.Id) })
.ToList();
// translates to
SELECT p.id AS "Id", paradedb.score(p.id) AS "Score"
FROM products AS pI see 2 options:
|
|
Just released v0.1.0 of the package on NuGet: https://www.nuget.org/packages/EFCore.ParadeDB.PgSearch Development can be followed at: https://github.com/nandor23/EFCore.ParadeDB.PgSearch |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
What idea are you proposing?
Hello,
I am proposing an EF extension library for
pg_search. It would expose all the functions through a static class, similar to howEF.Functionsis used. Index creation should not be supported, as that would require overriding the EF migration builder, and creating a BM25 index manually inside a migration file is possible with raw SQL: https://learn.microsoft.com/en-us/ef/core/managing-schemas/migrations/managing?tabs=dotnet-core-cli#adding-raw-sqlI have already started working on an extension library, and am implementing
paradedb.match. Here is an example of what the LINQ query would look like and how it would translate.With that in mind, would it be possible to simplify the syntax in ParadeDB without specifying the
key field. I am not a database expert, but wouldn’t it be possible to get the key field under the hood for the specified table we are selecting from? The syntax would become simpler, and easier to understand.Why are you proposing this idea?
To provide an extension library for Npgsql.EntityFrameworkCore.PostgreSQL that adds
pg_searchintegration.Full Name:
Nandor Krizbai
Affiliation:
None
All reactions