static void Main(String[] args)
    {
        String cs = @"Data Source=ALIASTVALK;Initial Catalog=TestEF;Integrated Security=True; MultipleActiveResultSets=True";

        using (TestEFContext c = new TestEFContext(cs)) {
            UserGroup g1 = new UserGroup {
                Name      = "G1",
                DynFields = new List <UserGroupDynamicField> {
                    new UserGroupDynamicField {
                        Name = "DF11"
                    },
                    new UserGroupDynamicField {
                        Name = "DF12"
                    }
                }
            };
            c.Groups.Add(g1);
            UserGroup g2 = new UserGroup {
                Name      = "G2",
                DynFields = new List <UserGroupDynamicField> {
                    new UserGroupDynamicField {
                        Name = "DF21"
                    },
                    new UserGroupDynamicField {
                        Name = "DF22"
                    }
                }
            };
            c.Groups.Add(g2);
            c.Users.Add(new User {
                Name   = "U1",
                Groups = new List <UserGroup> {
                    g1, g2
                }
            });
            c.SaveChanges();
        }

        using (TestEFContext c = new TestEFContext(cs)) {
            var res = c.Users.Include("Groups.DynFields").First().Groups.SelectMany(x => x.DynFields).ToList();
            foreach (var v in res)
            {
                Console.WriteLine(v.Name);
            }
        }
    }
Exemplo n.º 2
0
        static void Main(string[] args)
        {
            TestEFContext ctx = new TestEFContext();

            if (ctx.Database.Exists())
            {
                //string sql = "select * from perfiles";
                ctx.Database.Connection.Open();
                //ctx.Database.SqlQuery(sql, ctx.Database.Connection.ToString());
                ctx.Database.Connection.Close();
                Console.WriteLine("La Base esta..");
                Console.ReadLine();
            }

            //  Perfil p1 = ctx.Perfiles.FirstOrDefault();

            //Console.WriteLine($"{p.Descripcion}");

            //  Console.ReadLine();

            // Console.WriteLine($"{p1.Descripcion}");
            //    Usuario u = ctx.Usuarios.FirstOrDefault();

            //Console.WriteLine($"{u.Login} {u.perfil.Descripcion}");
            //Perfil p1 = new Perfil();



            Perfil p1 = ctx.Perfiles
                        .Where(per => per.Descripcion.ToLower() == "avanzado").FirstOrDefault();

            if (p1 == null)
            {
                p1             = new Perfil();
                p1.Descripcion = "Avanzado";
            }

            //p1.Descripcion = "Invitados";
            Usuario u = new Usuario();

            u.Login  = "******";
            u.perfil = p1;

            ctx.Usuarios.Add(u);
            ctx.SaveChanges();

            /*
             * Usuario usr = ctx.Usuarios.Where(u => u.Login == "thedy").FirstOrDefault();
             * //Console.WriteLine($"{usr.Login} {usr.perfil.Descripcion}");
             *
             *
             * Perfil p = usr.perfil;
             *
             *
             */



            Console.ReadLine();
            ctx.Dispose();
        }