Exemple #1
0
        public static DataTable GetEnumAsDataTable(Array pEnum, SiralamaYonu pSortDirection)
        {
            DataTable oDt = new DataTable();

            oDt.Columns.Add("Text");
            oDt.Columns.Add("Value");
            oDt.Columns.Add("Description");
            oDt.TableName = "ENUM";

            DataColumn[] PrimaryKeyColumns = new DataColumn[1];
            PrimaryKeyColumns[0] = oDt.Columns["Value"];
            oDt.PrimaryKey       = PrimaryKeyColumns;

            foreach (var item in pEnum)
            {
                string    itemText        = item.ToString();
                string    itemValue       = Convert.ToInt32(item).ToString();
                string    itemDescription = "";
                FieldInfo fi = item.GetType().GetField(item.ToString());
                DescriptionAttribute[] attributes = (DescriptionAttribute[])fi.GetCustomAttributes(typeof(DescriptionAttribute), false);
                itemDescription = (attributes.Length > 0) ? attributes[0].Description : item.ToString();

                DataRow oRw = oDt.NewRow();
                oRw["Text"]        = itemText;
                oRw["Value"]       = itemValue;
                oRw["Description"] = itemDescription;
                oDt.Rows.Add(oRw);
            }

            if (pSortDirection != 0)
            {
                oDt = oDt.FilterDataTable(string.Empty, string.Format("Text {0}", pSortDirection.ToString()));
            }
            return(oDt);
        }
Exemple #2
0
 public static DataTable GetEnumAsDataTable(this Array pEnum, SiralamaYonu pSortDirection)
 {
     return(DataTableEnumConverter.GetEnumAsDataTable(pEnum, pSortDirection));
 }