yes, you just need to apply the same pattern to all string manipulation
methods :)

On Tue, Sep 16, 2008 at 00:03, Matthew Snyder <[EMAIL PROTECTED]>wrote:

>
> Pascal -
>
> You're absolutely right. I'll put that together the next time I'm
> home.
>
> Does that mean the "1" constant in src/DbLinq/Vendor/Implementation/
> SqlProvider.cs (like line 466) will be refactored too?
>
> -
>
> On Sep 15, 5:46 pm, "Pascal Craponne" <[EMAIL PROTECTED]> wrote:
> > Hi Matthew,
> > the option you chosed to implement string index (in substrings, for
> example)
> > causes two problems:
> > 1. it can not be optimized, since it comes at SQL generation level, thus
> > we'll get some "-1" (and I don't understand why it is not a "+1", but
> that
> > is not the point)
> > 2. it works only for Oracle, and that's too selfish :) Some SQL providers
> > may have the same problem too.
> >
> > So here's my suggestion:
> > 1. ISqlProvider gets a StringIndexStartsAtOne property
> > 2. If the above value it true, then we set the involved argument
> > Expression.Add(originalExpression,Expression.Constant(1)) when creating
> the
> > SpecialExpression.
> > 3. When the special expression is translated again in CLR, the involved
> > argument coming for SpecialExpression is reverted.
> > Don't mind if it seems heavy, place such manipulations in a single
> method.
> > Such expressions will be optimized when possible (when a constant is
> used),
> > so we're all good.
> >
> > --
> > Pascal.
> >
> > jabber/gtalk: [EMAIL PROTECTED]
> > msn: [EMAIL PROTECTED]
> >
>


-- 
Pascal.

jabber/gtalk: [EMAIL PROTECTED]
msn: [EMAIL PROTECTED]

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"DbLinq" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/dblinq?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to