2017-02-15 4 views
2

Я хочу, чтобы иметь возможность пройти в дате mm-dd-yyyy (2-17-2017), так как для этого используется datetime сервера sql.Linq to sql C# Lamba дата проезда

Так что я писал лямбда LINQ к SQL-запрос, но я боролся с синтаксисом

var query = QALists 
    //.Where (z => z.Disposition == "Verified") 
    //.Where (z => z.CallDate == DateTime.ParseExact("20170215","MMddyyyy",System.Globalization.CultureInfo.InvariantCulture)) 
    //.Where(z => Convert.ToDateTime(20170215, System.Globalization.CultureInfo.InvariantCulture)) 
    .Where (z => DateTime.Parse(string.Format("{0}", z.Calldate.ToString() == "2-17-2017"))) 
    .AsEnumerable() 
    .Select(z => new QAList() 
       { 
        Agent = z.Agent, 
        ClientName = z.ClientName, 
        Disposition = z.Disposition, 
        CallDate = z.Calldate, 
        Comment = z.Comment, 
        CreatedDateTime = z.CreatedDateTime, 
        CallLength = z.CallLength, 
        IdentityColumnId = z.IdentityColumnId, 
        Number = z.Number, 
        InboundCall = z.InboundCall, 
        OutboundCall = z.OutboundCall, 
        Status = z.Status, 
        QAListId = z.QAListId  
       }).ToList(); 

Я закомментированного мой различные испытания CallDate выглядит 2017-02-09T07:51:00.76 в C# с сервера SQL

Как могу ли я использовать. Где лямбда просто разбирать входящую дату?

CallDate выглядит эта недвижимость в Poco

public DateTime CallDate { get; set; } 

ответ

0

Просто используйте конструктор, чтобы сделать дату и использовать дату СОБСТВЕННОСТЬ DATETIME

.Where (z => z.Calldate.Date == new DateTime(2017,2,17).Date) 

https://msdn.microsoft.com/en-us/library/system.datetime.date.aspx

+0

ArgumentOutOfRangeException: год, месяц, и Параметры дня описывают не представимые DateTime. –

+2

@JeremyMiller - действительно, вы не могли разобраться, чтобы поменять местами 2 и 17? В любом случае я его отредактировал. – Hogan