Esempio n. 1
0
 internal PartitionedViewAdapter(PartitionedViewConfiguration <T> config, MemberTableFactory <T> memberTableFactory, DatabaseAdapter adapter)
     : base(config.ConnectionName)
 {
     Config             = config;
     Adapter            = adapter;
     MemberTableFactory = memberTableFactory;
     memberTables       = GetDataRangeKeys().Select(MemberTableFactory.Create).ToList();
 }
Esempio n. 2
0
        public void AddPartitionFor(T o)
        {
            var dataRangeKey = GetDataRangeKey(o);

            if (!memberTables.Any(mt => mt.DataRangeKey == dataRangeKey))
            {
                var memberTable = MemberTableFactory.Create(dataRangeKey);
                memberTable.DbContext.Database.Initialize(true);
                AddCheckConstraint(o, dataRangeKey);
                memberTables.Add(memberTable);
                CreateView();
            }
        }