As part of #9126, I set about adding a PostgreSQL-specific ILikeExpression and modifying NpgsqlQuerySqlGenerator to render it correctly. I hit several limitations with DefaultQuerySqlGenerator not exposing enough functionality to subclasses:
- _typeMapping is private, and so I can't set it properly (as
VisitLike() does)
- isSearchCondition is a private static method, so there's no way to introduce a new expression type that is identified as a search condition. This means that a useless
= TRUE is rendered out, and may have other consequences I'm not aware of as well.
I can submit PRs for these two specific problems, but I've run into similar issues previously, so you guys may want to do a proper review of DefaultQuerySqlGenerator keeping providers in mind.