Ich habe die folgende LINQ-Abfrage:Warum setzt LINQ-to-Entities diese Abfrage in eine Unterauswahl?
var queryGroups = (from p in db.cl_contact_event
select new Groups { inputFileName = p.input_file_name }).Distinct();
, die folgenden übersetzt wenn ausführen:
SELECT
[Distinct1].[C1] AS [C1],
[Distinct1].[input_file_name] AS [input_file_name]
FROM (SELECT DISTINCT
[Extent1].[input_file_name] AS [input_file_name],
1 AS [C1]
FROM [mel].[cl_contact_event] AS [Extent1]
) AS [Distinct1]
Jetzt bin ich ziemlich sicher, dass der Grund eine Unterauswahl ist, weil ich die Basis-LINQ-Abfrage umgeben von() und dann .Distinct() ausführen, aber ich weiß nicht genug über LINQ, um sicher zu sein. Wenn das tatsächlich der Fall ist, gibt es eine Möglichkeit, meine Abfrage neu zu strukturieren/zu codieren, so dass eine Unterauswahl nicht auftritt?
Ich weiß, dass es wahrscheinlich scheint, dass ich nur hier bin, aber ich bin nur neugierig.
Ist das [tag: linq-to-sql], [tag: linq-to-entities] oder [tag: linq-to-nhibernate]? –
@DannyVarod linq-to-entities Ich glaube, seit ich EF4 verwende, frage ich eine Sybase-Datenbank. – Kittoes0124
Ändern Sie in diesem Fall das verwendete Tag und aktualisieren Sie den Titel der Frage entsprechend. –