Maybe the problem ExpressionDispatcher.AnalyzeJoin(), probably becouse the
leftTable at line 1061 is a MetaTableExpression.

Mike, can you try to set a break point at line 1061 of
DbLinq/Data/Linq/Sugar/Implementation/ExpressionDispatcher.Analyzer.cs and
post here the leftExpression watch output?


Giacomo

On Wed, Apr 15, 2009 at 12:27 PM, Giacomo Tesio <[email protected]> wrote:

> I hate Microsoft!
>
>
> On Wed, Apr 15, 2009 at 12:16 PM, Pascal Craponne <[email protected]>wrote:
>
>> The bad news are that VB and C# do not generate the same Expressions with
>> the apparently same LINQ request.This means that a special case is not
>> supported by the engine, apparently in the "where" handling.
>>
>>
>> On Wed, Apr 15, 2009 at 10:44, <[email protected]> wrote:
>>
>>>
>>> Hello Newsgroup,
>>>
>>> another error occurs when I try to filter my LinQ Stmts by a WHERE
>>> Clause. But this error is heavy to reproduce in the northwind DB. This
>>> is the Stmt in Visual Basic:
>>> Dim oCompleteProducTaskInfo = From oProdPlan In
>>> m_oDb.m_oMyDBMySqlDb.ProdUkTIonPlan _
>>>        Join oOrder In m_oDb.m_oMyDBMySqlDb.AUFTRagsListE _
>>>                On oProdPlan.AuftragslisteID Equals oOrder.ID _
>>>        Join oProductCosts In m_oDb.m_oMyDBMySqlDb.ProdUkTkoSTen _
>>>                On oOrder.ProduktkostenID Equals oProductCosts.ID _
>>>        Join oProduct In m_oDb.m_oMyDBMySqlDb.ProdUkT _
>>>                On oProductCosts.ProdukteID Equals oProduct.ID _
>>>        Join oProductCat In m_oDb.m_oMyDBMySqlDb.ProdUkTKateGoRiE _
>>>                On oProduct.ProduktkategorieID Equals oProductCat.ID _
>>> ##->    Where (oProductCat.Kategorie Like m_sProductGroup) _
>>>        Join oCustomer In m_oDb.m_oMyDBMySqlDb.KuNDE _
>>>                On oOrder.KundeID Equals oCustomer.ID _
>>>        Select New With { _
>>>                oProdPlan, _
>>>                oOrder, _
>>>                oProductCosts, _
>>>                oProduct, _
>>>                oProductCat, _
>>>                oCustomer}
>>>
>>> If I try to Access "oCompleteProducTaskInfo" I get this error: Message
>>> = "S0701: No way to find left table for Join"
>>> If I remove the Where clause (marked with ##->) I get no errors. I
>>> have translated the Stmt into C# syntax, but there I get no errors.
>>> That is strange, because its the same database and the same connector
>>> (from dbmetal).
>>>
>>> // This stmnt is the C# Counterpart, but it works without errors:
>>> var oCompleteProducTaskInfo = from oProdPlan in MyDB.ProdUkTIonsPlan
>>>                                                          join oOrder in
>>> MyDB.AUFTRagsListE
>>>                                                                  on
>>> oProdPlan.AuftragslisteID equals oOrder.ID
>>>                                                          join
>>> oProductCosts in MyDB.ProdUkTkoSTen
>>>                                                                  on
>>> oOrder.ProduktkostenID equals oProductCosts.ID
>>>                                                          join oProduct in
>>> MyDB.ProdUkT
>>>                                                                  on
>>> oProductCosts.ProdukteID equals oProduct.ID
>>>                                                          join oProductCat
>>> in MyDB.ProdUkTKateGoRiE
>>>                                                                  on
>>> oProduct.ProduktkategorieID equals oProductCat.ID
>>>                                                          where
>>> (oProductCat.Kategorie == m_sProductGroup)
>>>                                                          join oCustomer
>>> in MyDB.KuNDE
>>>                                                                  on
>>> oOrder.KundeID equals oCustomer.ID
>>>                                                          select new
>>>                                                          {
>>>
>>>  oProdPlan,
>>>                                                                  oOrder,
>>>
>>>  oProductCosts,
>>>
>>>  oProduct,
>>>
>>>  oProductCat,
>>>
>>>  oCustomer
>>>                                                          };
>>>
>>> Can someone give me a hint what I can do to detect the error?
>>>
>>>
>>> Thanks
>>>
>>> Mike
>>>
>>> PS: Currently I make a Where stmt on the result of the first stmt.
>>>
>>> PSS: In eastern I was traveling by train, but without internet
>>> connection. So excuse the amount of questions.
>>>
>>>
>>
>> >>
>>
>

--~--~---------~--~----~------------~-------~--~----~
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