예제 #1
0
파일: Manager.cs 프로젝트: fjiang2/sqlcon
        /// <summary>
        /// Upgrade DPO packages from SQL SERVER
        /// </summary>
        /// <param name="path"></param>
        /// <returns></returns>
        public MessageBuilder UpgradePackage(string path)
        {
            MessageBuilder messages = new MessageBuilder();

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

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


                Packing packing = new Packing(type);
                packing.Pack();

                if (!packing)
                {
                    messages.Add(Message.Information(string.Format("Table {0} is empty.", packing.TableName)));
                }
                else
                {
                    string       fileName = string.Format("{0}\\{1}.cs", path, packing.ClassName);
                    StreamWriter sw       = new StreamWriter(fileName);
                    sw.Write(packing.ToString());
                    sw.Close();

                    messages.Add(Message.Information(string.Format("Table {0} packed into {1}.", packing.TableName, fileName)));
                }
            }


            return(messages);
        }
예제 #2
0
파일: Manager.cs 프로젝트: fjiang2/sqlcon
        /// <summary>
        /// Upgrade DPO packages from SQL SERVER
        /// </summary>
        /// <param name="path"></param>
        /// <returns></returns>
        public MessageBuilder UpgradePackage(string path)
        {
            MessageBuilder messages = new MessageBuilder();
            foreach (Type type in assembly.GetTypes())
            {
                if (type.BaseType != typeof(DPObject))
                    continue;

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

                Packing packing = new Packing(type);
                packing.Pack();

                if (!packing)
                {
                    messages.Add(Message.Information(string.Format("Table {0} is empty.", packing.TableName)));
                }
                else
                {
                    string fileName = string.Format("{0}\\{1}.cs", path, packing.ClassName);
                    StreamWriter sw = new StreamWriter(fileName);
                    sw.Write(packing.ToString());
                    sw.Close();

                     messages.Add(Message.Information(string.Format("Table {0} packed into {1}.", packing.TableName, fileName)));
                }
            }

            return messages;
        }