Lire Excel à l'aide de LINQ

Je veux lire excel 2003( pas de changement provenant de tiers) et le groupe de données dans la Liste ou un Dictionnaire (je n'ai pas laquelle est la bonne)
pour l'exemple ci-dessous (Excel mise en forme )
Les livres des Données [première ligne et la première colonne dans excel]
deuxième rangée( aucun enregistrement)
Code,Nom,IBN [troisième rangée (deuxième colonne, troisième colonne]
Aust [quatrième ligne, première colonne]
UX test1 34 [ cinquième ligne (deuxième colonne, troisième colonne]
......
....

Livres Données

     Code     Name     IBN

Aust

    UX         test1     34
   UZ         test2     345
   UN         test3     5654

NOUS

   UX         name1     567
  TG         nam2      123
  UM         name3     234

Je suis de la lecture des données excel à l'aide de code suivant( à l'aide de Google)

        string filename = @"C:\\" + "Book1.xls";
        string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" +
                                      "Data Source=" + filename + ";" +
                                      "Extended Properties=Excel 8.0;";

        OleDbDataAdapter dataAdapter = new OleDbDataAdapter("SELECT * FROM [Sheet1$]", connectionString);
        DataSet myDataSet = new DataSet();
        dataAdapter.Fill(myDataSet, "BookInfo");
        DataTable dataTable = myDataSet.Tables["BookInfo"];


       var rows = from p in dataTable.AsEnumerable()
       where p[0].ToString() != null || p[0].ToString() != "" && p.Field<string>("F2") != null
       select new 
       { countryName= p[0],
           bookCode= p.Field<string>("F2"),
           bookName= p.Field<string>("F3")
      };

Le code ci-dessus n'est pas bon que pour obtenir le “Code” je suis à l'aide de “ F2” et pour le pays dont je suis l'aide de p[0].Que dois-je utiliser pour obtenir le code et le nom de chaque pays.

Aussi c'est de donner les informations que je veux, mais je ne sais pas comment le mettre en liste ou un dictionnaire ou dans la classe afin que je puisse obtenir des données en passant comme paramètre un nom de pays.

En bref il faut tout d'abord mettre toutes les données de la liste ou un dictionnaire et puis vous pouvez appeler la liste ou un dictionnaire d'obtenir un filtre de données par pays.
Grâce

Je suis vraiment confus quant à ce que vous êtes réellement obtenir ici. Si vous pouvez fournir des échantillons adéquats de la feuille excel que vous souhaitez lire, je suis sûr que je peux vous aider. Mais pour l'instant, je ne comprends pas la question, peut-être à voir avec la façon dont la question a été posée et le caractère aléatoire des données en haut....
Vous semblent manquer le point ici. Je suis de l'impression il y a quelques principes fondamentaux manquant à partir de vos connaissances, dans ce cas, vous devez essayer de comprendre d'abord juste avant de sauter directement à une solution. Mon hypothèse de départ est que la "F2" et "F3" pièces stand pour "CHAMP 2" & "CHAMP 3'. Ce qui signifie que vous devez remplacer ces valeurs avec les noms de tes champs.
Les réponses de travail? Rien n'est accepté et je préfère ne pas essayer de tout mais plutôt de commencer avec la solution retenue.

OriginalL'auteur NETQuestion | 2009-09-28