Cela dépend vraiment de vos besoins et la façon dont les flux de l'interface utilisateur. Dans la plupart des cas, vous pouvez fournir une plage de dates et rechercher des publications dans cette plage.
Le formatage des messages résultants dépend entièrement de vous, des outils avec lesquels vous devez travailler et de ce dont vous avez besoin. Toutefois, vous pouvez utiliser GroupBy
pour regrouper les publications à une certaine date, puis parcourir chaque groupe pour générer des liens individuels. Mon exemple ci-dessous vous montre cela dans une application de console. Vous devriez pouvoir extrapoler comment l'appliquer à vos besoins.
var postsByMonth = (from post in context.Posts
where post.Date >= start && post.Date < end
orderby post.Date descending
select post).GroupBy(post => new DateTime(post.Date.Year, post.Date.Month, 1));
foreach (IGrouping<DateTime, Post> posts in postsByMonth)
{
Console.WriteLine("{0:MMM} {0:yyyy}", posts.Key);
Console.WriteLine("======================");
Console.WriteLine();
foreach (Post post in posts)
{
Console.WriteLine("Post from {0}", post.Date);
}
Console.WriteLine();
}