示例#1
0
        public override void Initialize(Domain ownerDomain, TupleDescriptor keyTupleDescriptor)
        {
            var accessor = ownerDomain.Services.Demand <IStorageSequenceAccessor>();

            sequenceProvider = ownerDomain.StorageProviderInfo.Supports(ProviderFeatures.TransactionalKeyGenerators)
        ? new SessionCachingSequenceProvider <TValue>(accessor)
        : (ICachingSequenceProvider <TValue>) new DomainCachingSequenceProvider <TValue>(accessor);
        }
        public override void Initialize(Domain ownerDomain, TupleDescriptor keyTupleDescriptor)
        {
            prototype = Tuple.Create(keyTupleDescriptor);

            var accessor = ownerDomain.Services.Demand <IStorageSequenceAccessor>();

            if (ownerDomain.StorageProviderInfo.Supports(ProviderFeatures.TransactionalKeyGenerators))
            {
                sequenceProvider = new SessionCachingSequenceProvider <TValue>(accessor);
            }
            else
            {
                sequenceProvider = new DomainCachingSequenceProvider <TValue>(accessor);
            }
        }