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); } }
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); } }