示例#1
0
        internal void DoOpenFileDataSrc()
        {
            //数据库中所有数据
            string[] allfiles = System.IO.Directory.GetFiles(_datasourcePath);
            if (allfiles == null || allfiles.Length == 0)
            {
                return;
            }
            //表文件
            IEnumerable <string> lsdtfiles = allfiles.Where(delegate(string s)
            {
                return(s.EndsWith(".lsdt"));
            });

            if (lsdtfiles.Count() == 0)
            {
                return;
            }
            foreach (string item in lsdtfiles)
            {
                XmlDocument document = new XmlDocument();
                document.Load(item);

                XmlNode root = document.SelectSingleNode("datas");
                if (root == null)
                {
                    continue;
                }

                XmlAttribute attritype = root.Attributes["type"];
                if (attritype == null)
                {
                    continue;
                }

                string datatype = attritype.Value;

                DatatableType type = DatatableType.Null;
                if (!Enum.TryParse <DatatableType>(datatype, true, out type))
                {
                    continue;
                }
                string    tablename = System.IO.Path.GetFileNameWithoutExtension(item);
                Datatable dataTable = new Datatable(tablename, type);
                dataTable.Datasource = this;
                this.Tables.Add(dataTable);
//                 XmlNodeList nodelist = document.SelectNodes("datas/data");
//
//                 if (nodelist != null && nodelist.Count > 0)
//                 {
//                     DoParserFileTableData(nodelist, dataTable, item);
//                 }
            }
        }
示例#2
0
        static ICollection CreateDataSource(DatatableType datatype)
        {
            DataTable dt = new DataTable();
            DataRow   dr;

            switch (datatype)
            {
            case DatatableType.stringDS:
                dt.Columns.Add(new DataColumn("Field", typeof(string)));
                for (int i = 0; i < 5; i++)
                {
                    dr    = dt.NewRow();
                    dr[0] = "Item " + i.ToString();
                    dt.Rows.Add(dr);
                }
                break;

            case DatatableType.nullDS:
                dt.Columns.Add(new DataColumn("Field", typeof(string)));
                for (int i = 0; i < 5; i++)
                {
                    dt.Rows.Add(dt.NewRow());
                }
                break;

            case DatatableType.emptyDS:
                dt.Columns.Add(new DataColumn("Field", typeof(string)));
                for (int i = 0; i < 5; i++)
                {
                    dr    = dt.NewRow();
                    dr[0] = string.Empty;
                    dt.Rows.Add(dr);
                }
                break;

            default:
                throw new ArgumentException("Wrong data source type");
            }

            DataView dv = new DataView(dt);

            return(dv);
        }
		static ICollection CreateDataSource (DatatableType datatype)
		{
			DataTable dt = new DataTable ();
			DataRow dr;

			switch (datatype) 
			{
				case DatatableType.stringDS:
					dt.Columns.Add (new DataColumn ("Field", typeof (string)));
					for (int i = 0; i < 5; i++) {
						dr = dt.NewRow ();
						dr[0] = "Item " + i.ToString ();
						dt.Rows.Add (dr);
					}
					break;
				case DatatableType.nullDS:
					dt.Columns.Add (new DataColumn ("Field", typeof (string)));
					for (int i = 0; i < 5; i++) {
						dt.Rows.Add (dt.NewRow ());
					}
					break;
				case DatatableType.emptyDS:
					dt.Columns.Add (new DataColumn ("Field", typeof (string)));
					for (int i = 0; i < 5; i++) {
						dr = dt.NewRow ();
						dr[0] = string.Empty ;
						dt.Rows.Add (dr);
					}
					break;
				default:
					throw new ArgumentException ("Wrong data source type");

			}
			
			DataView dv = new DataView (dt);
			return dv;
		}
示例#4
0
文件: Datatable.cs 项目: radtek/LsMap
 public Datatable(string tablename, DatatableType type)
 {
     _tableName = tablename;
     _tableType = type;
 }