コード例 #1
0
        public void createClass(String XmlPath, string ClassComment)
        {
            MysqlClass classModellator = new MysqlClass();
            //classModellator.PathToSave = this.txtPath.Text;
            classModellator.Description = ClassComment;
            classModellator.DriverUsed = (TypeOfDriver)this.comboBoxTypeDrivedr.SelectedItem;
            classModellator.AccessModifier = this.comboBoxModifiers.SelectedItem.ToString();
            classModellator.NameSpace = this.textBoxProjectName.Text + (this.textBoxProjectName.Text.Length > 0 ? "." : "") + this.textBoxNamespace.Text;
            classModellator.Name = this.textBoxClassName.Text;

            XmlTextReader reader = new XmlTextReader(XmlPath);
            String Name = "";
            String Type = "";

            bool isColumnName = false;
            bool isDataType = false;

            while (reader.Read())
            {
                switch (reader.NodeType)
                {
                    case XmlNodeType.Element:
                        if (reader.Name == "ColumnName")
                        {
                            isColumnName = true;
                        }
                        else if (reader.Name == "DataType")
                        {
                            isDataType = true;
                        }
                        //DataType
                        break;

                    case XmlNodeType.Text:
                        if (isColumnName)
                        {
                            Name = reader.Value;
                            isColumnName = false;
                        }
                        else if (isDataType)
                        {
                            Type = reader.Value;
                            String[] vetStr = Type.Split(',');
                            PropertyModellator tmpPM = new PropertyModellator();
                            tmpPM.Name = Name;
                            tmpPM.Type = vetStr[0];
                            classModellator.ListProperties.Add(tmpPM);
                            //classTable.addProperty(Name, vetStr[0]);
                            isColumnName = false;
                            isDataType = false;
                            Name = "";
                            Type = "";
                        }
                        //tmp=reader.Value;
                        break;

                    case XmlNodeType.EndElement:
                        //tmp = reader.Name;

                        break;

                }
            }

            StreamWriter sw = File.CreateText(this.txtPath.Text + "\\" + classModellator.FileName);

            sw.Write(classModellator.getClassModellated());

            //classModellator.writeClass();

            if (this.checkBoxOpenFile.Checked)
            {
                System.Diagnostics.Process.Start(this.txtPath.Text + "\\" + classModellator.FileName);
            }
        }