2010-11-11 7 views
0

résultat Tableau de données dans la grille:Comment faire une recherche dans la table de données en utilisant LINQ?

SerialNumber PartNumber 
000000001  QWERTY 
000000002  QERTY 

je dois rechercher un SerialNumber particulier dans le résultat de ma table de données à l'aide d'un contrôle Textbox.

exemple pseudocode:

If 
    SearctTexbox.Text =000000001 
    Message: This Serial is Ok! 

Else 
    Message: Not Ok 

Comment le faire dans LINQ ou toute autre méthode?

+0

Pourquoi utilisez-vous un 'DataTable' avec LINQ? Ensuite, vous voudrez utiliser des "chaussures de cheval" avec "injection de carburant", ou "sangsues" avec "médecine nucléaire". ;-) – Enigmativity

+0

:) Ouais ... J'ai besoin d'interroger une table de données en utilisant linq, donc je n'ai pas besoin de créer un autre SQL sélectionne .. – Crimsonland

Répondre

1

Si la colonne SerialNumber ont des valeurs uniques, afin de lui donner un essai:

//dt is DataTable 
dt.PrimaryKey = new DataColumn[1] { dt.Columns[0] }; // set your primary key 
DataRow dRow = dt.Rows.Find(SearchTextbox.Text); 
if (dRow != null){ 
    // you've found it 
} 
else{ 
    //sorry dude 
} 
1

Pourquoi avez-vous besoin de LINQ? Vous pouvez essayer avec

dataTable.Select("condition"); 
0
string massage = dc.Parts.Select(
    o => o.SerialNumber == SearctTexbox.Text).Count()>0 ? "Found it"!"No Find"; 
0

essayer cette

var item = from r in Datatable.AsEnumerable() 
      where r.Field<int>("SerialNumber") == int.Parse(SearchTextbox.Text.ToString()) 
      select r.Field<int>("SerialNumber"); 

if (item == null) 
{ 
    // not found 
} 
else 
{ 
    // you found it. 
}