2 of 2 deleted 2371 characters in body

You're checking that "page does not contain any posts and page number is not one".

Reversing the condition is often the easiest way to clarify it. The inverse condition would be "page contains at least one post, or page number is one".

I would make it look like this:

if (pagePosts.Any() || pageNumber == 1)
{
return View(pagePosts);
}
else
{
return RedirectToAction("Index", new { pageNumber = pagePosts.TotalPageCount });
}


Notice page renamed to pagePosts, also for clarity: it's not a page, it's the posts on the page that was requested. pagePosts is less ambiguous I find.