■ DataTable で Linq する
dataTable.AsEnumerable().Where(x => x. ...) で行う
補足
* 以下の関連記事でも使用しているhttps://blogs.yahoo.co.jp/dk521123/37979233.html
■ サンプル
using System; using System.Data; using System.Windows.Forms; namespace SampleForm { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { var dataTable = new DataTable(); dataTable.Columns.Add("area", typeof(string)); dataTable.Columns.Add("prefecture", typeof(string)); dataTable.Columns.Add("city", typeof(string)); dataTable.Rows.Add("Kanto", "Tokyo", "Setagaya"); dataTable.Rows.Add("Kanto", "Tokyo", "Shibuya"); dataTable.Rows.Add("Kanto", "Tokyo", "Nakano"); dataTable.Rows.Add("Kanto", "Kanagawa", "Yokohama"); dataTable.Rows.Add("Kanto", "Kanagawa", "Kawasaki"); dataTable.Rows.Add("Kanto", "Saitama", "Saitama"); dataTable.Rows.Add("Kanto", "Saitama", "Fukaya"); dataTable.Rows.Add("Kanto", "Saitama", "Koshigaya"); dataTable.Rows.Add("Kanto", "Saitama", "Kawaguchi"); dataTable.Rows.Add("Kyushu", "Fukuoka", "Fukuoka"); dataTable.Rows.Add("Kyushu", "Nagasaki", "Nagasaki"); dataTable.Rows.Add("Kyushu", "Kagoshima", "Kagoshima"); var resultDataTable = dataTable.AsEnumerable().Where(x => x["prefecture"].ToString() == "Tokyo").AsDataView(); this.dataGridView1.DataSource = resultDataTable; this.label1.Text = "Done!"; } } }
出力結果
prefecture city ------------------ Tokyo Setagaya Tokyo Shibuya Tokyo Nakano
関連記事
DataTable関連
DataTable ~ 基礎知識編 ~https://blogs.yahoo.co.jp/dk521123/10415992.html
DataTable ~ 基本編 ~
https://blogs.yahoo.co.jp/dk521123/38002713.html
DataTable ~ あれこれ編 ~
https://blogs.yahoo.co.jp/dk521123/20413895.html
DataTable ~ DISTINCT / 重複した値を省くには... ~
https://blogs.yahoo.co.jp/dk521123/14321146.html
DataTable ~ 重複を気にせずカウントするには... ~
https://blogs.yahoo.co.jp/dk521123/31382607.html
DataSet / DataTable ~ データテーブルのソート ~
https://blogs.yahoo.co.jp/dk521123/15231236.html
DataSet と TableAdapter について
https://blogs.yahoo.co.jp/dk521123/10415992.html