I'm posting again for full-text with with wildcard (* at the end of a word) (see http://msdn.microsoft.com/en-us/library/ms142492.aspx)

Is this feature planned? I'm aware this may be challenging as the different databases you support have different implementations of full-text search.

If this feature is not planned in the near future, I may implement a LINQ query rewriter : is there documentation/samples on how do this?

Regards, Julien

This thread was imported from our support forum. The original discussion may contain more detailed answer.

asked Jun 03 '10 at 07:54

olorin's gravatar image


edited Oct 08 '10 at 09:18

One Answer:

This can't be implemented well with LINQ rewriter, but generally the case is pretty simple. You must:

  • Add Query.ContainsText method

  • Modify our FreeTextProvider in RSE to support ContainsText option (likely, by adding enum)

  • Modify our LINQ translator to handle Query.ContainsText translation to new FreeTextProvider with ContainsText option

  • Add SqlDml.ContainsTable TVF support in SQL DOM

  • Modify Xtensive.Storage.Providers.Sql.Servers.SqlServer.SqlCompiler.VisitFreeText so that it will use SqlDml.ContainsTable TVF. Also you must ensure VisitFreeText impl. for PostgreSQL throws "not implemented" exception in case it gets FreeTextProvider with ContainsText option.

All this stuff can be done by almost absolutely identical way as for FreeText, so in general, it isn't hard, implying you're familiar with layers of abstraction we have.

answered Jun 03 '10 at 12:28

Alex%20Yakunin's gravatar image

Alex Yakunin

We'll definitely implement this a bit later, but I feel we shouldn't do this ASAP (there are lots of other important issues).

(Jun 03 '10 at 12:28) Alex Yakunin Alex%20Yakunin's gravatar image
Your answer
Please start posting your answer anonymously - your answer will be saved within the current session and published after you log in or create a new account. Please try to give a substantial answer, for discussions, please use comments and please do remember to vote (after you log in)!
toggle preview

powered by OSQA