Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 513613
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 13, 20262026-05-13T07:26:25+00:00 2026-05-13T07:26:25+00:00

I have this query return plannerDb.IndividualCalendars.Where(u => u.UserId == userId && u.StartDate.Date >= startDate

  • 0

I have this query

return plannerDb.IndividualCalendars.Where(u => 
    u.UserId == userId && 
    u.StartDate.Date >= startDate && 
    u.EndDate.Date <= endDate)

so basically what this query does is that is looks for all calendar events that range from the start of that month to the end of that month.

However this does not account for events such as this

Start Date: 12/26/2009 12:00:00 AM
End Date: 1/8/2010 12:00:00 AM

So today is December 30th. My calendar displays from Nov 29th to Jan 8th.

So this event will be shown this month. However next month when January comes around it will show from December 27th to Feb 6th.

Now since the start date is not in this range it will ignore this event and not display it.

So I need a way to show these kinds of events but at the same time only gather the ones that are needed.

I could always just get every event from the user they had but I think that is such a waste since I am going to have to loop through that and sort it.

So I want only records that will be shown.

So as you can see I am using linq.

Thanks

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-13T07:26:26+00:00Added an answer on May 13, 2026 at 7:26 am

    If I understand your requirements correctly, you only need events that overlap the interval [startdate, endDate]. If that’s correct, this will do it for you:

    plannerDb.IndividualCalendars.Where(
        u => u.UserId == userId &&
            (u.StartDate.Date < startDate && (
                (u.StartDate.Date >= startDate && u.StartDate.Date <= startDate) || 
                (u.EndDate.Date >= endDate && u.EndDate.Date <= endDate) ||
                (u.StartDate.Date <= startDate && u.EndDate.Date >= endDate)
            )
    );
    

    Basically, you only need to know if u.StartDate.Date is in [startDate, endDate] or u.EndDate.Date is in [startDate, endDate] or if the interval [u.StartDate.Date, u.EndDate.Date] contains [startDate, endDate]. Perhaps a simpler way to express this is:

    plannerDb.IndividualCalendars.Where(
        u => u.UserId == userId &&
            !(u.StartDate.Date > endDate || u.EndDate.Date < startDate)
    );
    

    That is, the event can not start after the endDate or end before the startDate. Equivalently:

    plannerDb.IndividualCalendars.Where(
        u => u.UserId == userId &&
            (u.StartDate.Date <= endDate && u.EndDate.Date >= startDate)
    );
    

    This last version is the clearest. It says that the event has to start before the endDate and end after the startDate.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 398k
  • Answers 398k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • Editorial Team
    Editorial Team added an answer As James said, use std::string... except be aware that global… May 15, 2026 at 3:39 am
  • Editorial Team
    Editorial Team added an answer You can simply slice the results :) objects = your_pre_sliced_queryset[:pagesize] May 15, 2026 at 3:39 am
  • Editorial Team
    Editorial Team added an answer Look. Your page is much like an question page on… May 15, 2026 at 3:39 am

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.