esecuzione di questo codice:DateTime manipolazione all'interno LINQ to entità interrogare
public bool CheckTime(DateTime date, int UserID, int TotalTimeMin)
{
using (var context = new myDB())
{
var assginments = from c in context.Assignments.Where(x=>(x.AssignmentDateTime < date && x.AssignmentDateTime.Value.AddMinutes(TotalTimeMin) > date) ||
(x.AssignmentDateTime < date.AddMinutes(TotalTimeMin))) select c;
if(assginments != null) return false;
else return true;
}
}
ottengo questo errore.
LINQ to Entities does not recognize the method 'System.DateTime AddMinutes(Double)' method, and this method cannot be translated into a store expression.
TotalTimeMin è int. Non sono sicuro di quale sia la causa: AssignmentDateTime è DateTime? e forse questo è il problema?
Il problema è che LINQ-to-Entities non sa come tradurre DateTime.AddMinutes nella lingua del datastore (probabilmente SQL). Forse questo ti indicherà la giusta direzione. Avrò bisogno di più tempo per trovare una soluzione per te. –
Grazie, in realtà ho giocato un po 'e probabilmente hai ragione, non importa quello che faccio, non posso usare AddMinnute all'interno della query (anche se posso facilmente scriverlo con SQL ....) – Dani