internal EntitySet(EntityDataSource ds, PropertyInfo pi) { var type = pi.PropertyType; Debug.Assert( type.IsGenericType && type.GetGenericTypeDefinition() == typeof(DbSet <>) && type.GetGenericArguments().Length == 1); DataSource = ds; _pi = pi; ElementType = type.GetGenericArguments()[0]; }
/// <summary> /// Инициализирует новый экземпляр объекта,<see cref="EntityBindingList"/>. /// </summary> /// <param name="dataSource"><see cref="EntityDataSource"/> которому принадлежат сущности этого списка.</param> /// <param name="query"><see cref="IEnumerable"/> предоставляет сущности для этого списка.</param> /// <param name="name">Имя для идентификации этого списка в его родительском (для иерархической привязки).</param> public EntityBindingList(EntityDataSource dataSource, IEnumerable query, string name) { DataSource = dataSource; _set = query as DbSet <T>; _coll = query as EntityCollection <T>; _query = query; _name = name; if (dataSource != null && !dataSource.DesignMode) { Refresh(); } else { try { AddNew(); } catch { // ignored } } }
internal EntitySetTypeDescriptor(EntityDataSource dataSource) { _dataSource = dataSource; }