Ich benutze das .NET und das Entity Framework. Ich möchte eine Tabelle nach einem Datum ohne den Zeitteil gruppieren.
Ich habe die Klasse:
%Vor%Und die Methode (ich benutze das BLToolkit, wenn du wissen willst, was DbManager ist):
%Vor%In dieser Methode übersetzt linq in diese SQL-Abfrage:
%Vor%Und das ist eine falsche Abfrage, da sie nicht nur nach einem Datum gruppiert ist.
Aber wenn ich diesen Code benutze (er ist nicht verwendbar, muss ich ein Klassenobjekt zurückgeben):
%Vor%Es wird in folgendes übersetzt:
%Vor%Und das ist die richtige Abfrage.
Ich nehme an, dass Entity Framework versucht, meine Abfrage oder etwas Ähnliches zu optimieren, und deshalb habe ich die falsche Abfrage.
Habe ich Recht? Mache ich es richtig? Was soll ich tun (vielleicht direkte SQL-Abfrage oder etwas anderes verwenden)?
Es ist viel einfacher EntityFunctions * hier: * DbFunctions ab Entity Framework 6.
Antwort aktualisieren: EntityFunctions
wurde veraltet.
Warnung 1 'System.Data.Entity.Core.Objects.EntityFunctions' ist veraltet: 'Diese Klasse wurde durch System.Data.Entity.DbFunctions ersetzt.' c: \ users \ liufa \ documents \ visual studio 2013 \ Projekte \ MatasMrLenderTest \ Mvc5MobileApplication1 \ Controllers \ CreditScoreController.cs 32 103 Mvc5MobileApplication1
Jetzt ist es DbFunctions
.
Tags und Links .net c# entity-framework