wie kanonische Funktionen in Entity Framework und Mysql verwendet werden

8

Ich möchte Timespan zu DateTime in EntityFramework mit MySql Database hinzufügen.

Ich habe versucht, mit DbFunctions.AddMinutes(someminutes) und EntityFunctions.AddMinutes(someminutes) , aber wenn ich ausführe bekomme ich eine Ausnahme wie

  

FUNCTION projectName.AddMinutes existiert nicht

Ich habe gegoogelt, kann aber nicht finden, wie man die kanonische Funktion ausführt. Obwohl es eine Liste von Funktionen gibt, weiß ich nicht, welcher Klasse sie angehören Ссылка

Ich verwende

  1. MySql.Data.Entities 6.8.3.0
  2. EntityFramework 6.0.0
  3. MySql.Data 6.8.4
  4. MySql.Web 6.8.4
  5. MySql (Datenbank) 5.6.17

Meine Linq-Abfrage ist wie folgt

%Vor%

die Straße entlang, wo Bedingung und Seitenumbruch angewendet werden

    
Arjun Vachhani 14.05.2015, 10:43
quelle

2 Antworten

1

Eigentlich habe ich den Fehler nicht verstanden

  

FUNCTION projectName.AddMinutes existiert nicht

aber

  

FUNCTION databaseName.AddMinutes existiert nicht

Ich weiß nicht, was das Problem ist. Habe ich irgendwelche nicht kompatiblen Treiber / Anschlüsse, ich weiß es nicht.

Um dieses Problem zu lösen, habe ich gerade eine Funktion mit dem Namen AddMinutes erstellt, die intern die Funktion DATE_ADD () aufruft. Funktionsdefinition ist wie folgt

%Vor%

Ich verstehe, dass dies keine richtige Lösung ist, sondern ein HACK

    
Arjun Vachhani 15.05.2015, 08:50
quelle
0

AddMinutes-Methode ist Teil der DateTime-Klasse. Sie können also die Instanz der DateTime-Klasse verwenden, d. h.

%Vor%

DbFunctions.AddMinutes (Ausdruck, Zahl) Diese Funktion kann nur innerhalb einer LINQ to Entities-Abfrage angezeigt werden ( Ссылка ):

%Vor%     
PatBusz 14.05.2015 10:50
quelle