Search on the blog

2014年6月23日月曜日

C#入門(5)DataViewでSort

DataViewを使ってみた。
  • DataTable.DefaultViewでDataViewを取得できる。
  • Sortプロパティにカラム名をセットするとソートされる。ASCとかDESCとか付けられる。デフォルトはASC。コンマで区切ると複数キーの指定ができる。
  • DataView.Countで行の数を取得できる
  • DataView[index]とすると、index番目の行にアクセスできる。
  • DataView.ToTable()でDataTableに変換できる。
using System;
using System.Data;

namespace sample
{
    public class DataViewSample
    {
        public static void Main(string[] args) {
            new DataViewSample().Run();
        }

        public void Run() {
            DataTable table = new DataTable();

            table.Columns.Add("name", typeof(String));
            table.Columns.Add("age", typeof(int));

            String[] names = {"taro", "jiro", "saburo", "shiro", "goro"};
            int[] age = {100, 15, 14, 13 ,12};

            for (int i = 0; i < names.Length; i++) {
                DataRow row = table.NewRow();

                row["name"] = names[i];
                row["age"] = age[i];
            
                table.Rows.Add(row);
            }

            DataView view = table.DefaultView;
            view.Sort = "age";

            // iterate items in DataView: with "for" loop
            for (int i = 0; i < view.Count; i++) {
                Console.WriteLine("{0} {1}", view[i]["name"], view[i]["age"]);
            }

            // iterate imtes in DataView: with "foreach" loop
            foreach (DataRowView row in view) {
                Console.WriteLine("{0} {1}", row["name"], row["age"]);
            }
               
        }
    }
}

0 件のコメント:

コメントを投稿