Пример #1
0
 public static DbSet GetDbSet <T>(this PBF4Db ctx)
 {
     try
     {
         var dbSet = ctx.Set(typeof(T));
         return(dbSet);
     }
     catch (Exception ex)
     {
         throw new ArgumentException("Invalid Entity Type supplied for Lookup", ex);
     }
 }
Пример #2
0
        public static ObservableCollection <T> GetEntityObservableCollection <T>(this PBF4Db ctx)
        {
            try
            {
                var key           = typeof(T).Name;
                var adapter       = (IObjectContextAdapter)ctx;
                var objectContext = adapter.ObjectContext;

                var container = objectContext.MetadataWorkspace.GetEntityContainer(objectContext.DefaultContainerName,
                                                                                   System.Data.Entity.Core.Metadata.Edm.DataSpace.CSpace);

                var name = container.BaseEntitySets.Where(o => o.ElementType.Name.Equals(key)).FirstOrDefault().Name;

                var query = objectContext.CreateQuery <T>($"[{name}]");


                return(new ObservableCollection <T>(query.AsEnumerable()));
            }
            catch (Exception ex)
            {
                throw new ArgumentException("Invalid Entity Type supplied for Lookup", ex);
            }
        }