Seri DateTime EntityFramework için
Benim uygulamada bir Varlık Çerçeve kullanıyorum.
Benim Tablo
-Article
-period
-startDate
= ^ Eşleşen kayıtları ihtiyacım var . DateTime.Now > startDate and (startDate period) > DateTime.Now
Ama şimdi onun çalışma bu kodu denedim
Context.Article
.Where(p => p.StartDate < DateTime.Now)
.Where(p => p.StartDate.AddDays(p.Period) > DateTime.Now)
(Varlıklar bu SERİ 'Sistemi.yöntemi tanımıyor benim özel Durum kodu çalıştırdığımda DateTime AddDays(Çift)' yöntemi, ve mağaza bir ifade tercüme edilemez bu yöntem.) oluşur.
CEVAP
Varlık Çerçevesi bu SERİ kullanırken, tümcesi SQL tercüme Nereden içini ifade eder. Mantıklı DateTime.Add() SQL çevirisi yok çünkü hata yapıyorsun.
Hızlı bir çalışma-geçici belleğe ilk deyiminin sonuçlarını okuma ve Nesneleri bu SERİ filtreleme bitirmek için kullanın:
Context.Article.Where(p => p.StartDate < DateTime.Now)
.ToList()
.Where(p => p.StartDate.AddDays(p.Period) > DateTime.Now);
Ayrıca eğer kullanıyorsanız EntityFunctions.AddDays yöntemi deneyebilirsiniz .NET 4.0:
Context.Article.Where(p => p.StartDate < DateTime.Now)
.Where(p => EntityFunctions.AddDays(p.StartDate, p.Period)
> DateTime.Now);
Not: EF 6 artık System.Data.Entity.DbFunctions.AddDays.

Nasıl üstesinden gelmek için "dat...
Nasıl Jackson JSON işlemciye sahip Jod...
Seri hale getirilirken jQuery JSON içi...
Nasıl tarih sadece SQL Server datetime...
Nasıl MySQL bir Datetime sütun için va...