LINQ to Entities with AddMonth method

You have to use the Datetime outside the request because you are in the LINQ TO ENTITIES that don't use System.Datetime Library.

If you wish to use a fix date the you can define it outside the request as

DateTime compareDate = DateTime.Now.AddMonths(x);


You can use SqlFunctions classvar;

 today =  DateTime.Now; return Newsletterctx.Subscribers.Count(o =>
 o.Validated == false &&
 o.ValidationEmailSent == true &&
 SqlFunctions.DateAdd("month",1,o.SubscriptionDateTime) <today);

Perhaps you can shift the date to test against instead:

DateTime testDate = DateTime.Now.AddMonths(-1);
return Newsletterctx.Subscribers.Count
            (o => o.Validated == false 
             && o.ValidationEmailSent == true 
             && o.SubscriptionDateTime < testDate);