Ejemplo n.º 1
0
        private void GetDataAdapterList()
        {
            string mstart = _tableAdapterManagerType.FullName;

            mstart = mstart.Substring(0, mstart.Length - adapterManagerClassSuffix.Length);
            Type         tp;
            string       s;
            Object       o;
            PropertyInfo pri;
            Type         mtp = TableAdapterManager.GetType();

            sqlDataAdapters.Clear();
            dataAdapters.Clear();

            foreach (DataTable dt in DataSet.Tables)
            {
                s  = mstart + dt.TableName + adapterClassSuffix;
                tp = dt.GetType().Assembly.GetType(s, false, true);
                if (tp == null)
                {
                    continue;
                }
                o = Activator.CreateInstance(tp);
                dataAdapters[dt.TableName] = o;

                sqlDataAdapters[dt.TableName] = GetHiddenProperty(o, "Adapter") as DbDataAdapter;

                pri = mtp.GetProperty(dt.TableName + adapterClassSuffix);
                if (pri != null)
                {
                    pri.SetValue(TableAdapterManager, o, null);
                }
            }
        }
Ejemplo n.º 2
0
        public void CreateAdapterForTable(string tablename)
        {
            if (String.IsNullOrEmpty(tablename))
            {
                throw new ArgumentException();
            }

            string send   = "TableAdapter";
            string mend   = "TableAdapterManager";
            string mstart = _tableAdapterManagerType.FullName;

            mstart = mstart.Substring(0, mstart.Length - mend.Length);
            string adaptertypename = mstart + tablename + send;

            Type   tp = _tableAdapterManagerType.Assembly.GetType(adaptertypename, false, true);
            Object o  = Activator.CreateInstance(tp);

            Type         mtp = TableAdapterManager.GetType();
            PropertyInfo pri = mtp.GetProperty(tablename + send);

            if (pri != null)
            {
                pri.SetValue(TableAdapterManager, o, null);
            }

            dataAdapters[tablename]    = o;
            sqlDataAdapters[tablename] = GetHiddenProperty(o, "Adapter") as DbDataAdapter;
        }