JSON формат даты в запросе условия для проверки текущей даты - PullRequest
1 голос
/ 15 декабря 2011

Как я могу конвертировать дату здесь.Дата, поступающая из базы данных (RDate), имеет формат Json "/ Date (1323975591369) /", и я сравниваю ее с DateTime.Today

 int count = session.Query<Movies>("Movie/CurrentList")   
                    .Where(x => x.RDate== DateTime.Today)
                    .Count(); 

Сейчас, даже несмотря на то, что есть записи, соответствующие условиюЯ показываю нулевой результат в счетчике.

1 Ответ

1 голос
/ 16 декабря 2011

ZVenue, вы, вероятно, хотите запросить только компонент Date вашего RDate свойства.Если это так, просто расширьте свой запрос правильно.

Однако я не уверен, что вы правильно поняли основы, поэтому я собрал небольшой пример приложения.Довольно скучно на самом деле, но я надеюсь, что это поможет:

class Movie
{
    public string Id { get; set; }
    public string Name { get; set; }
    public DateTime Date { get; set; }
}

class Program
{
    static void Main(string[] args)
    {
        using (var documentStore = new DocumentStore { Url = "http://localhost:8080/" })
        {
            documentStore.Initialize();

            //SeedData(documentStore);

            using (var documentSession = documentStore.OpenSession())
            {
                var movies = documentSession.Query<Movie>()
                    .Where(x => x.Date.Date == new DateTime(2011, 6, 2))
                    .ToList();

                foreach (var movie in movies)
                {
                    Console.WriteLine(string.Format("Name: {0}", movie.Name));
                }
            }
        }

        Console.Read();
    }

    private static void SeedData(IDocumentStore documentStore)
    {
        var movies = new Movie[]
                         {
                             new Movie {Name = "May", Date = new DateTime(2011, 5, 1)},
                             new Movie {Name = "June", Date = new DateTime(2011, 6, 1)},
                             new Movie {Name = "June2a", Date = new DateTime(2011, 6, 2)},
                             new Movie {Name = "June2b", Date = new DateTime(2011, 6, 2)},
                             new Movie {Name = "June2c", Date = new DateTime(2011, 6, 2, 5, 0, 0)},
                             new Movie {Name = "June2d", Date = new DateTime(2011, 6, 2, 6, 0, 0)},
                             new Movie {Name = "June3", Date = new DateTime(2011, 6, 3)},
                             new Movie {Name = "July", Date = new DateTime(2011, 7, 1)},
                         };

        using (var documentSession = documentStore.OpenSession())
        {
            foreach (var movie in movies)
            {
                documentSession.Store(movie);
            }

            documentSession.SaveChanges();
        }
    }
}
...