0

Je suis en train d'écrire du code pour obtenir des nouvelles là-bas date de publication et le jour ,,,,, commeY at-il un moyen d'obtenir les données par nom de jour dans entityframework

   ViewBag.LatestNews = db.News 
      .Where(ve => ve.PublishingDate >= DateTime.Now 
      && ve.IsActive == true); 

Le i de sortie obtenir est correct selon l'exigence .... Je dois filtrer la date de publication sur le DayOfWeek laisse dire "dimanche" ... Comment écrire le paramètre qui prend le numéro du jour et filtre le résultat. Toute une aide s'il vous plaît .... Merci pour votre temps

Répondre

1

Essayez ceci: -

ViewBag.LatestNews = db.News 
         .Where(ve => (int)ve.PublishingDate.DayOfWeek == 7 
             && ve.IsActive == true); 

Ou: -

ViewBag.LatestNews = db.News 
         .Where(ve => ve.PublishingDate.DayOfWeek.ToString() == "Sunday" 
             && ve.IsActive == true); 

Edit:
Vous pouvez utiliser SqlFunctions.DatePart méthode pour linq à entité: -

ViewBag.LatestNews = db.News 
      .Where(ve => SqlFunctions.DatePart("dw", ve.PublishingDate) == "Sunday" 
          && ve.IsActive == true); 
+1

Merci pour la réponse ,,,, vs traverse la même erreur "Jour de la semaine n'est pas pris en charge dans LINQ aux entités" ,,,, –

+2

Type de correct, mais DayOfWeek et surtout "Dimanche" ne fonctionne que lors de l'exécution d'un CultureInfo où dimanche est effectivement le jour 7, et épelé "dimanche". –

+1

merci encore, alors quelle devrait être la solution, pouvez-vous s'il vous plaît aider –