2011-01-10 8 views
0

Der folgende Quellcode ausgeführt wird:BLToolKit: Parameter nicht verwendet wird, wenn IQueryable <> query

   sectors1 = from sector in db.GetTable<InfrSect>(); 

       sectors2 = from sector in sector1 
          join team in db.GetTable<Team>() on sector.TeamId equals team.Id 
          where team.CountryId == iCountryId 
          select sector; 


       IList<InfrSect> list = sectors2.ToList<>(); 

Generieren Sie die folgende Abfrage:

SELECT sector.team as TeamId 
FROM infr_sect sector 
INNER JOIN Team t1 ON sector.team = t1.Id 
WHERE t1.Country = 

Die erzeugte Abfrage enthält nicht 'iCountryId' Parameter.

Warum? Wie kann ich den Fehler beheben?

Danke.

+0

wie Sie bestimmen, welche Abfrage generiert wird? hast du ich durch den Sql Profiler gefunden, oder? –

+0

Ja, durch den Profiler – Budda

Antwort

0

Das Problem war in benutzerdefinierten DB-Anbieter. Ich habe nicht erwähnt, dass ich MySql DB benutze. Ich habe den Quellcode meines MySqlDataProvider durch einen Quellcode derselben Klasse aus dem BLToolkit-Quellcode ersetzt und alles wurde funktionsfähig.

Hier ist ein Link zu Lösung auf dem ‚BLToolKit Support-Forum‘: http://rsdn.ru/forum/prj.rfd/4109840.aspx