public static DataTable ToDataTable(this IEnumerable en, JQAutoComplete autoComplete)
 {
     return(IEnumerableExtensions.ToDataTable(en,
                                              new JQGrid()
     {
         Columns =
         {
             new JQGridColumn()
             {
                 DataField = autoComplete.DataField
             }
         }
     }
                                              ));
 }
        public static List <string> ToListOfString(this IEnumerable en, JQAutoComplete autoComplete)
        {
            DataTable     dataTable  = IEnumerableExtensions.ToDataTable(en, autoComplete);
            List <string> list       = new List <string>();
            IEnumerator   enumerator = dataTable.Rows.GetEnumerator();

            try {
                while (enumerator.MoveNext())
                {
                    DataRow row = (DataRow)enumerator.Current;
                    if (string.IsNullOrEmpty(list.Find((Predicate <string>)(s => s == row[autoComplete.DataField].ToString()))))
                    {
                        list.Add(row[autoComplete.DataField].ToString());
                    }
                }
            } finally {
                IDisposable disposable = enumerator as IDisposable;
                if (disposable != null)
                {
                    disposable.Dispose();
                }
            }
            return(list);
        }