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