示例#1
0
        public void GravaProc(TableDefs Tabs, StringBuilder Out, Boolean soPoco)
        {
            Out.ApLine();
            Out.Append("    // Proc ")
            .ApLine(Name);
            Out.Append("    public class ")
            .Append(NomeClass)
            .ApLine(" : DBProc");
            Out.ApLine("    {");
            foreach (ColDef Coluna in Cols)
            {
                Coluna.GravaDeclField(Out);
            }

            // Grava um constructor default com que constroi todas as colunas
            Out.ApLine();
            Out.ApLine("        // Constructor");
            Out.Append("        public ")
            .Append(NomeClass)
            .ApLine("(DBConnection Conn)");
            Out.ApLine("            : base(Conn)");
            Out.ApLine("        {");

            foreach (ColDef Coluna in Cols)
            {
                Coluna.GravaInicField(Out);
            }
            Out.ApLine();
            Out.ApLine("            Command.CommandType = CommandType.StoredProcedure;");
            Out.Append("            Command.CommandText = \"")
            .Append(Name)
            .ApLine("\";");
            Out.ApLine("        }");

            /* Constructors a partir de tabelas ?
             * Só se tiver na mesma posição para evitar confusão....
             * Disconsidera o DtInclusao DateTime e campos tipo TimeStamp
             */
            foreach (TableDef Tab in Tabs)
            {
                if (Tab != this && Tab.Type == "U")    // Somente Tabelas
                {
                    Int32 CH = CamposIguais(Tab.ColsSemTSSemDtInclusao);
                    if (CH > 0)
                    {
                        GravaConstructorHerdProc(Out, Tab, CH, soPoco);
                    }
                }
            }

            Out.ApLine("    }");
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            List <String> Objetos = (List <String>)Session["Objetos"];
            String        ConnStr = (String)Session["ConnString"];

            SoPoco = (Boolean)Session["SoPoco"];

            SqlConnection DBConn = new SqlConnection(ConnStr);

            DBConn.Open();

            Tabs = new TableDefs(DBConn, Objetos);
        }
示例#3
0
 public void VerifTabHerd(TableDefs Tabs)
 {
     foreach (TableDef Tab in Tabs)
     {
         if (Tab != this && Tab.Type == "U")
         {
             // Views só podem ser herdados se todos os campos estã no view
             // e na mesma posição !
             Int32 CH = CamposIguais(Tab.Cols);
             if (CH == Tab.Cols.Count && CH > m_CamposHerd)
             {
                 m_TabHerd    = Tab;
                 m_CamposHerd = CH;
             }
         }
     }
 }
示例#4
0
        protected void Page_Load(object sender, EventArgs e)
        {
            List <String> Objetos = (List <String>)Session["Objetos"];
            String        ConnStr = (String)Session["ConnString"];

            SqlConnection DBConn = new SqlConnection(ConnStr);

            DBConn.Open();

            var Tabs = new TableDefs(DBConn, Objetos);

            var m_SB = new StringBuilder();

            if (Tabs.Count > 0)
            {
                Tabs[0].GeraProcSql(m_SB);
            }

            litSP.Text = m_SB.ToString();
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            List <String> Objetos = (List <String>)Session["Objetos"];
            String        ConnStr = (String)Session["ConnString"];

            SqlConnection DBConn = new SqlConnection(ConnStr);

            DBConn.Open();

            var Tabs = new TableDefs(DBConn, Objetos);

            var m_SB = new StringBuilder();

            foreach (var Tab in Tabs)
            {
                if (Tab.Type == "U")
                {
                    // public DbSet<tb_ModelosFormulario> tb_ModelosFormulario { get; set; }
                    m_SB.Append("        ");

                    // EF não suporta views !
                    // Views herdados de tabela são um truque.....
                    if (Tab.Type == "V" && Tab.TabHerd == null)
                    {
                        m_SB.Append("// ");
                    }

                    m_SB.Append("public DbSet&lt;r")
                    .Append(Tab.Name)
                    .Append("&gt; ")
                    .Append(Tab.Name)
                    .ApLine(" { get; set; } ");
                }
            }
            litSP.Text = m_SB.ToString();
        }