Mysql
 sql >> Base de données >  >> RDS >> Mysql

EntityFramework 6.1.3 et MySQL DbFunctions.TruncateTime n'existe pas ?

Pour résoudre ce problème, les gens utilisent une procédure stockée.

Create FUNCTION TruncateTime(dateValue DateTime) RETURNS date return Date(dateValue);

Donc c'est très, très brouillon. Mais à l'exception de l'utilisation de la procédure stockée, j'ai utilisé cette variante.

var yesterday = DateTime.Now.AddDays(-1);

var newCustomersCount = _context
  .Customers
  .Where(x => x.RegisterDate > yesterday)
  .ToList()
  .Where(x => x.RegisterDate.Date == DateTime.Now.Date)
  .Count();

Nous sélectionnons tous les enregistrements plus récents qu'hier. .ToList() exécute une requête puis nous filtrons ce que nous voulons. Cette méthode sélectionne le minimum d'enregistrements nécessaires.