/// <summary>Private CTor for deserialization</summary>
        /// <param name="info"></param>
        /// <param name="context"></param>
        protected ContextEntity(SerializationInfo info, StreamingContext context) : base(info, context)
        {
            _attribute                                         = (policyDB.CollectionClasses.AttributeCollection)info.GetValue("_attribute", typeof(policyDB.CollectionClasses.AttributeCollection));
            _alwaysFetchAttribute                              = info.GetBoolean("_alwaysFetchAttribute");
            _alreadyFetchedAttribute                           = info.GetBoolean("_alreadyFetchedAttribute");
            _attributeTypeCollectionViaAttribute               = (policyDB.CollectionClasses.AttributeTypeCollection)info.GetValue("_attributeTypeCollectionViaAttribute", typeof(policyDB.CollectionClasses.AttributeTypeCollection));
            _alwaysFetchAttributeTypeCollectionViaAttribute    = info.GetBoolean("_alwaysFetchAttributeTypeCollectionViaAttribute");
            _alreadyFetchedAttributeTypeCollectionViaAttribute = info.GetBoolean("_alreadyFetchedAttributeTypeCollectionViaAttribute");


            base.FixupDeserialization(FieldInfoProviderSingleton.GetInstance(), PersistenceInfoProviderSingleton.GetInstance());

            // __LLBLGENPRO_USER_CODE_REGION_START DeserializationConstructor
            // __LLBLGENPRO_USER_CODE_REGION_END
        }
        /// <summary> Initializes the class members</summary>
        private void InitClassMembers()
        {
            _attribute = new policyDB.CollectionClasses.AttributeCollection(new AttributeEntityFactory());
            _attribute.SetContainingEntityInfo(this, "Context");
            _alwaysFetchAttribute                              = false;
            _alreadyFetchedAttribute                           = false;
            _attributeTypeCollectionViaAttribute               = new policyDB.CollectionClasses.AttributeTypeCollection(new AttributeTypeEntityFactory());
            _alwaysFetchAttributeTypeCollectionViaAttribute    = false;
            _alreadyFetchedAttributeTypeCollectionViaAttribute = false;



            PerformDependencyInjection();

            // __LLBLGENPRO_USER_CODE_REGION_START InitClassMembers
            // __LLBLGENPRO_USER_CODE_REGION_END
            OnInitClassMembersComplete();
        }