Linq в данных или набора данных - PullRequest
0 голосов
/ 21 июня 2011

У меня есть list<string> и набор данных. Мне нужно написать запрос Linq, чтобы получить значения из набора данных или таблицы данных, чтобы проверить, присутствуют ли значения в List<string>. Пожалуйста, помогите мне в написании запроса, чтобы получить данные из набора данных или данных

я буду использовать foreach после получения значений, чтобы проверить, присутствуют ли данные в list<string>

EDIT:

DataSet dsDuplicate = (DataSet) Session["EventDescription"];
DataTable dt = dsDuplicate.Tables[0];
string cellValue = string.Empty;
for (int rowCount = 0; rowCount < gvEventMechanic.Rows.Count; rowCount++)
{
     TextBox textBoxId = (TextBox)gvEventMechanic.Rows[rowCount].Cells[2].FindControl("txtId");
     lstStringId.Add(textBoxId.Text);
}

1 Ответ

2 голосов
/ 21 июня 2011
List<string> list = ...
DataTable table = ...

var items = new HashSet<string>(list);
var results = from row in table.AsEnumerable()
              where items.Contains(row.Field<string>("YourColumnName"))
              select row;

foreach (var matchingRow in results)
{
    // do whatever
}

Примечание. Если вам нужно, чтобы результаты были в форме другого DataTable или DataView (например, для привязки данных), для этого есть методы.

var output = results.CopyToDataTable(); // or
var output = results.AsDataView(); 
...