Ejemplo n.º 1
0
        /// <summary>
        /// Create tables used for installation
        /// </summary>
        /// <param name="level"></param>
        /// <param name="worker"></param>
        public static void CreateTable(Level level, BackgroundTask worker)
        {
            Type[] baiscTypes = CreateBasicTable();
            Assembly basicAssembly = baiscTypes[0].Assembly;

            Assembly[] assemblies = SysExtension.GetInstalledAssemblies();

            int i = 0;
            foreach (Assembly asm in assemblies)
            {

                MessageBuilder messages = new MessageBuilder();
                foreach (Type type in asm.GetTypes())
                {
                    if (type.BaseType != typeof(DPObject))
                        continue;

                    if (asm == basicAssembly && Array.IndexOf(baiscTypes, type) >= 0)
                        continue;

                    TableAttribute[] A = type.GetAttributes<TableAttribute>();
                    if (A.Length == 0)
                        continue;

                    if (A[0].Level == level)
                        messages.AddRange(CreateTable(type));
                }

                worker.ReportProgress((int)(i * 100.0 / assemblies.Length), messages.ToString());
                i++;

            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Create tables used for installation
        /// </summary>
        /// <param name="level"></param>
        /// <param name="worker"></param>
        public static void CreateTable(Level level, BackgroundTask worker)
        {
            Type[]   baiscTypes    = CreateBasicTable();
            Assembly basicAssembly = baiscTypes[0].Assembly;

            Assembly[] assemblies = SysExtension.GetInstalledAssemblies();

            int i = 0;

            foreach (Assembly asm in assemblies)
            {
                MessageBuilder messages = new MessageBuilder();
                foreach (Type type in asm.GetTypes())
                {
                    if (type.BaseType != typeof(DPObject))
                    {
                        continue;
                    }

                    if (asm == basicAssembly && Array.IndexOf(baiscTypes, type) >= 0)
                    {
                        continue;
                    }

                    TableAttribute[] A = type.GetAttributes <TableAttribute>();
                    if (A.Length == 0)
                    {
                        continue;
                    }


                    if (A[0].Level == level)
                    {
                        messages.AddRange(CreateTable(type));
                    }
                }

                worker.ReportProgress((int)(i * 100.0 / assemblies.Length), messages.ToString());
                i++;
            }
        }
Ejemplo n.º 3
0
        public static MessageBuilder CreateTable(Assembly assembly)
        {
            MessageBuilder messages = new MessageBuilder();

            foreach (Type type in assembly.GetTypes())
            {
                if (type.BaseType != typeof(DPObject))
                {
                    continue;
                }

                if (!type.HasAttribute <TableAttribute>())
                {
                    continue;
                }

                messages.AddRange(CreateTable(type));
            }

            return(messages);
        }
Ejemplo n.º 4
0
        public static MessageBuilder CreateTable(Assembly assembly)
        {
            MessageBuilder messages = new MessageBuilder();
            foreach (Type type in assembly.GetTypes())
            {
                if (type.BaseType != typeof(DPObject))
                    continue;

                if (!type.HasAttribute<TableAttribute>())
                    continue;

                messages.AddRange(CreateTable(type));
            }

            return messages;
        }