public DataList GetDataList()
 {
     using (var sr = new System.IO.StringReader(_sw.ToString()))
     {
         var             dl      = new DataList();
         SeperatedReader headers = null;
         string          line;
         while ((line = sr.ReadLine()) != null)
         {
             var spr = new SeperatedReader(line, _seperator);
             if (headers == null)
             {
                 headers = spr;
             }
             else
             {
                 var item = dl.AddItem();
                 for (int i = 0; i < spr.Count; i++)
                 {
                     var x = headers[i];
                     if (string.IsNullOrWhiteSpace(x))
                     {
                         x = "empty" + i;
                     }
                     item.Set(x, spr[i]);
                 }
             }
         }
         return(dl);
     }
 }
Esempio n. 2
0
        void forId(string id, Action what, Activities activity = Activities.Update, Action onEnd = null)
        {
            if (string.IsNullOrWhiteSpace(id))
            {
                throw new InvalidOperationException("id was not provided");
            }
            try
            {
                init();
                if (_bp.From.PrimaryKeyColumns.Length == 1)
                {
                    var x = new equalToFilter();
                    Caster.Cast(_idColumn, id, x);
                    _tempFilter.Add(x.result);
                }
                else
                {
                    var sr = new SeperatedReader(id);
                    int i  = 0;
                    foreach (var item in _bp.From.PrimaryKeyColumns)
                    {
                        var x = new equalToFilter();
                        Caster.Cast(item, sr[i++], x);
                        _tempFilter.Add(x.result);
                    }
                }
                if (onEnd != null)
                {
                    _bp.End += onEnd;
                }
                _bp.Activity = activity;
                what();
            }
            finally
            {
                if (_bp.Counter == 0)
                {
                    throw new NotFoundException();
                }
                _bp.Activity = Activities.Update;
                if (onEnd != null)
                {
                    _bp.End -= onEnd;
                }

                _tempFilter.Clear();
            }
        }