Groupe Par de Multiples Colonne Dans LINQ en C#

J'ai une classe comme suit:

public class ActualClass
{
    public string BookName { get; set; }
    public string IssuerName { get; set; }
    public DateTime DateOfIssue { get; set; }
    public bool Status { get; set; }
}

Il a données suivantes dans la table:
Groupe Par de Multiples Colonne Dans LINQ en C#

Je voudrais les regrouper par IssuerName et DateOfIssue pour la suite de la classe viewModel:

public class ViewModel
{
   public string IssuerName { get; set; }
   public DateTime DateOfIssue { get; set; }
   public List<string> Books { get; set; }
}

Et les données seront affichées comme suit: (Capture d'écran des données sera remplacé par le tableau précédent de données après le succès de regroupement)
Groupe Par de Multiples Colonne Dans LINQ en C#

Une attention particulière: Est-il quelque chose de mal dans mon ViewModel en fonction de mes attentes?

J'ai essayé beaucoup après quelques stackoverflow réponses, mais aucune n'a fonctionné pour moi. Toute aide sera très appréciée.

Le code que j'ai essayé:

var viewmodel = from b in db.BookIssues
                group b by new
                {
                    b.IssuerName,
                    b.DateOfIssue
                }
                into g
                select new ViewModel()
                {
                    Name = g.key.IssuerName,
                    DateOfIssue = g.Key.DateOfIssue,
                    Books = g.ToList() //Actually this line of code is not working
                };

OriginalL'auteur TanvirArjel | 2016-11-23