/// <summary> Initializes the class members</summary>
        private void InitClassMembers()
        {
            _auctionEvent_ = new Auction.Entities.CollectionClasses.AuctionEventCollection(new AuctionEventEntityFactory());
            _auctionEvent_.SetContainingEntityInfo(this, "User_");
            _alwaysFetchAuctionEvent_ = false;
            _alreadyFetchedAuctionEvent_ = false;
            _auctionEvent = new Auction.Entities.CollectionClasses.AuctionEventCollection(new AuctionEventEntityFactory());
            _auctionEvent.SetContainingEntityInfo(this, "User");
            _alwaysFetchAuctionEvent = false;
            _alreadyFetchedAuctionEvent = false;
            _bidder = new Auction.Entities.CollectionClasses.BidderCollection(new BidderEntityFactory());
            _bidder.SetContainingEntityInfo(this, "User");
            _alwaysFetchBidder = false;
            _alreadyFetchedBidder = false;
            _bidder_ = new Auction.Entities.CollectionClasses.BidderCollection(new BidderEntityFactory());
            _bidder_.SetContainingEntityInfo(this, "User_");
            _alwaysFetchBidder_ = false;
            _alreadyFetchedBidder_ = false;
            _donation = new Auction.Entities.CollectionClasses.DonationCollection(new DonationEntityFactory());
            _donation.SetContainingEntityInfo(this, "User");
            _alwaysFetchDonation = false;
            _alreadyFetchedDonation = false;
            _donation_ = new Auction.Entities.CollectionClasses.DonationCollection(new DonationEntityFactory());
            _donation_.SetContainingEntityInfo(this, "User_");
            _alwaysFetchDonation_ = false;
            _alreadyFetchedDonation_ = false;
            _donor_ = new Auction.Entities.CollectionClasses.DonorCollection(new DonorEntityFactory());
            _donor_.SetContainingEntityInfo(this, "User_");
            _alwaysFetchDonor_ = false;
            _alreadyFetchedDonor_ = false;
            _donor = new Auction.Entities.CollectionClasses.DonorCollection(new DonorEntityFactory());
            _donor.SetContainingEntityInfo(this, "User");
            _alwaysFetchDonor = false;
            _alreadyFetchedDonor = false;
            _expense = new Auction.Entities.CollectionClasses.ExpenseCollection(new ExpenseEntityFactory());
            _expense.SetContainingEntityInfo(this, "User");
            _alwaysFetchExpense = false;
            _alreadyFetchedExpense = false;
            _expense_ = new Auction.Entities.CollectionClasses.ExpenseCollection(new ExpenseEntityFactory());
            _expense_.SetContainingEntityInfo(this, "User_");
            _alwaysFetchExpense_ = false;
            _alreadyFetchedExpense_ = false;
            _package__ = new Auction.Entities.CollectionClasses.PackageCollection(new PackageEntityFactory());
            _package__.SetContainingEntityInfo(this, "User__");
            _alwaysFetchPackage__ = false;
            _alreadyFetchedPackage__ = false;
            _package_ = new Auction.Entities.CollectionClasses.PackageCollection(new PackageEntityFactory());
            _package_.SetContainingEntityInfo(this, "User_");
            _alwaysFetchPackage_ = false;
            _alreadyFetchedPackage_ = false;
            _package = new Auction.Entities.CollectionClasses.PackageCollection(new PackageEntityFactory());
            _package.SetContainingEntityInfo(this, "User");
            _alwaysFetchPackage = false;
            _alreadyFetchedPackage = false;
            _raffle = new Auction.Entities.CollectionClasses.RaffleCollection(new RaffleEntityFactory());
            _raffle.SetContainingEntityInfo(this, "User");
            _alwaysFetchRaffle = false;
            _alreadyFetchedRaffle = false;
            _raffle_ = new Auction.Entities.CollectionClasses.RaffleCollection(new RaffleEntityFactory());
            _raffle_.SetContainingEntityInfo(this, "User_");
            _alwaysFetchRaffle_ = false;
            _alreadyFetchedRaffle_ = false;
            _user_ = new Auction.Entities.CollectionClasses.UserCollection(new UserEntityFactory());
            _user_.SetContainingEntityInfo(this, "User");
            _alwaysFetchUser_ = false;
            _alreadyFetchedUser_ = false;
            _user___ = new Auction.Entities.CollectionClasses.UserCollection(new UserEntityFactory());
            _user___.SetContainingEntityInfo(this, "User__");
            _alwaysFetchUser___ = false;
            _alreadyFetchedUser___ = false;
            _accountCollectionViaAuctionEvent_ = new Auction.Entities.CollectionClasses.AccountCollection(new AccountEntityFactory());
            _alwaysFetchAccountCollectionViaAuctionEvent_ = false;
            _alreadyFetchedAccountCollectionViaAuctionEvent_ = false;
            _accountCollectionViaAuctionEvent = new Auction.Entities.CollectionClasses.AccountCollection(new AccountEntityFactory());
            _alwaysFetchAccountCollectionViaAuctionEvent = false;
            _alreadyFetchedAccountCollectionViaAuctionEvent = false;
            _accountCollectionViaUser_ = new Auction.Entities.CollectionClasses.AccountCollection(new AccountEntityFactory());
            _alwaysFetchAccountCollectionViaUser_ = false;
            _alreadyFetchedAccountCollectionViaUser_ = false;
            _accountCollectionViaUser = new Auction.Entities.CollectionClasses.AccountCollection(new AccountEntityFactory());
            _alwaysFetchAccountCollectionViaUser = false;
            _alreadyFetchedAccountCollectionViaUser = false;
            _accountCollectionViaDonor_ = new Auction.Entities.CollectionClasses.AccountCollection(new AccountEntityFactory());
            _alwaysFetchAccountCollectionViaDonor_ = false;
            _alreadyFetchedAccountCollectionViaDonor_ = false;
            _accountCollectionViaDonor = new Auction.Entities.CollectionClasses.AccountCollection(new AccountEntityFactory());
            _alwaysFetchAccountCollectionViaDonor = false;
            _alreadyFetchedAccountCollectionViaDonor = false;
            _auctionEventCollectionViaExpense_ = new Auction.Entities.CollectionClasses.AuctionEventCollection(new AuctionEventEntityFactory());
            _alwaysFetchAuctionEventCollectionViaExpense_ = false;
            _alreadyFetchedAuctionEventCollectionViaExpense_ = false;
            _auctionEventCollectionViaDonation_ = new Auction.Entities.CollectionClasses.AuctionEventCollection(new AuctionEventEntityFactory());
            _alwaysFetchAuctionEventCollectionViaDonation_ = false;
            _alreadyFetchedAuctionEventCollectionViaDonation_ = false;
            _auctionEventCollectionViaDonation = new Auction.Entities.CollectionClasses.AuctionEventCollection(new AuctionEventEntityFactory());
            _alwaysFetchAuctionEventCollectionViaDonation = false;
            _alreadyFetchedAuctionEventCollectionViaDonation = false;
            _auctionEventCollectionViaBidder = new Auction.Entities.CollectionClasses.AuctionEventCollection(new AuctionEventEntityFactory());
            _alwaysFetchAuctionEventCollectionViaBidder = false;
            _alreadyFetchedAuctionEventCollectionViaBidder = false;
            _auctionEventCollectionViaBidder_ = new Auction.Entities.CollectionClasses.AuctionEventCollection(new AuctionEventEntityFactory());
            _alwaysFetchAuctionEventCollectionViaBidder_ = false;
            _alreadyFetchedAuctionEventCollectionViaBidder_ = false;
            _auctionEventCollectionViaRaffle_ = new Auction.Entities.CollectionClasses.AuctionEventCollection(new AuctionEventEntityFactory());
            _alwaysFetchAuctionEventCollectionViaRaffle_ = false;
            _alreadyFetchedAuctionEventCollectionViaRaffle_ = false;
            _auctionEventCollectionViaExpense = new Auction.Entities.CollectionClasses.AuctionEventCollection(new AuctionEventEntityFactory());
            _alwaysFetchAuctionEventCollectionViaExpense = false;
            _alreadyFetchedAuctionEventCollectionViaExpense = false;
            _auctionEventCollectionViaRaffle = new Auction.Entities.CollectionClasses.AuctionEventCollection(new AuctionEventEntityFactory());
            _alwaysFetchAuctionEventCollectionViaRaffle = false;
            _alreadyFetchedAuctionEventCollectionViaRaffle = false;
            _auctionEventCollectionViaPackage__ = new Auction.Entities.CollectionClasses.AuctionEventCollection(new AuctionEventEntityFactory());
            _alwaysFetchAuctionEventCollectionViaPackage__ = false;
            _alreadyFetchedAuctionEventCollectionViaPackage__ = false;
            _auctionEventCollectionViaPackage_ = new Auction.Entities.CollectionClasses.AuctionEventCollection(new AuctionEventEntityFactory());
            _alwaysFetchAuctionEventCollectionViaPackage_ = false;
            _alreadyFetchedAuctionEventCollectionViaPackage_ = false;
            _auctionEventCollectionViaPackage = new Auction.Entities.CollectionClasses.AuctionEventCollection(new AuctionEventEntityFactory());
            _alwaysFetchAuctionEventCollectionViaPackage = false;
            _alreadyFetchedAuctionEventCollectionViaPackage = false;
            _bidderCollectionViaPackage = new Auction.Entities.CollectionClasses.BidderCollection(new BidderEntityFactory());
            _alwaysFetchBidderCollectionViaPackage = false;
            _alreadyFetchedBidderCollectionViaPackage = false;
            _bidderCollectionViaPackage__ = new Auction.Entities.CollectionClasses.BidderCollection(new BidderEntityFactory());
            _alwaysFetchBidderCollectionViaPackage__ = false;
            _alreadyFetchedBidderCollectionViaPackage__ = false;
            _bidderCollectionViaPackage_ = new Auction.Entities.CollectionClasses.BidderCollection(new BidderEntityFactory());
            _alwaysFetchBidderCollectionViaPackage_ = false;
            _alreadyFetchedBidderCollectionViaPackage_ = false;
            _categoryCollectionViaPackage = new Auction.Entities.CollectionClasses.CategoryCollection(new CategoryEntityFactory());
            _alwaysFetchCategoryCollectionViaPackage = false;
            _alreadyFetchedCategoryCollectionViaPackage = false;
            _categoryCollectionViaPackage_ = new Auction.Entities.CollectionClasses.CategoryCollection(new CategoryEntityFactory());
            _alwaysFetchCategoryCollectionViaPackage_ = false;
            _alreadyFetchedCategoryCollectionViaPackage_ = false;
            _categoryCollectionViaPackage__ = new Auction.Entities.CollectionClasses.CategoryCollection(new CategoryEntityFactory());
            _alwaysFetchCategoryCollectionViaPackage__ = false;
            _alreadyFetchedCategoryCollectionViaPackage__ = false;
            _donorCollectionViaDonation_ = new Auction.Entities.CollectionClasses.DonorCollection(new DonorEntityFactory());
            _alwaysFetchDonorCollectionViaDonation_ = false;
            _alreadyFetchedDonorCollectionViaDonation_ = false;
            _donorCollectionViaDonation = new Auction.Entities.CollectionClasses.DonorCollection(new DonorEntityFactory());
            _alwaysFetchDonorCollectionViaDonation = false;
            _alreadyFetchedDonorCollectionViaDonation = false;
            _packageCollectionViaDonation_ = new Auction.Entities.CollectionClasses.PackageCollection(new PackageEntityFactory());
            _alwaysFetchPackageCollectionViaDonation_ = false;
            _alreadyFetchedPackageCollectionViaDonation_ = false;
            _packageCollectionViaDonation = new Auction.Entities.CollectionClasses.PackageCollection(new PackageEntityFactory());
            _alwaysFetchPackageCollectionViaDonation = false;
            _alreadyFetchedPackageCollectionViaDonation = false;
            _roleCollectionViaUser = new Auction.Entities.CollectionClasses.RoleCollection(new RoleEntityFactory());
            _alwaysFetchRoleCollectionViaUser = false;
            _alreadyFetchedRoleCollectionViaUser = false;
            _roleCollectionViaUser_ = new Auction.Entities.CollectionClasses.RoleCollection(new RoleEntityFactory());
            _alwaysFetchRoleCollectionViaUser_ = false;
            _alreadyFetchedRoleCollectionViaUser_ = false;
            _account = null;
            _accountReturnsNewIfNotFound = true;
            _alwaysFetchAccount = false;
            _alreadyFetchedAccount = false;
            _role = null;
            _roleReturnsNewIfNotFound = true;
            _alwaysFetchRole = false;
            _alreadyFetchedRole = false;
            _user = null;
            _userReturnsNewIfNotFound = true;
            _alwaysFetchUser = false;
            _alreadyFetchedUser = false;
            _user__ = null;
            _user__ReturnsNewIfNotFound = true;
            _alwaysFetchUser__ = false;
            _alreadyFetchedUser__ = false;

            PerformDependencyInjection();

            // __LLBLGENPRO_USER_CODE_REGION_START InitClassMembers
            // __LLBLGENPRO_USER_CODE_REGION_END

            OnInitClassMembersComplete();
        }
        /// <summary> Initializes the class members</summary>
        private void InitClassMembers()
        {
            _package = new Auction.Entities.CollectionClasses.PackageCollection(new PackageEntityFactory());
            _package.SetContainingEntityInfo(this, "Category");
            _alwaysFetchPackage = false;
            _alreadyFetchedPackage = false;
            _auctionEventCollectionViaPackage = new Auction.Entities.CollectionClasses.AuctionEventCollection(new AuctionEventEntityFactory());
            _alwaysFetchAuctionEventCollectionViaPackage = false;
            _alreadyFetchedAuctionEventCollectionViaPackage = false;
            _bidderCollectionViaPackage = new Auction.Entities.CollectionClasses.BidderCollection(new BidderEntityFactory());
            _alwaysFetchBidderCollectionViaPackage = false;
            _alreadyFetchedBidderCollectionViaPackage = false;
            _userCollectionViaPackage__ = new Auction.Entities.CollectionClasses.UserCollection(new UserEntityFactory());
            _alwaysFetchUserCollectionViaPackage__ = false;
            _alreadyFetchedUserCollectionViaPackage__ = false;
            _userCollectionViaPackage_ = new Auction.Entities.CollectionClasses.UserCollection(new UserEntityFactory());
            _alwaysFetchUserCollectionViaPackage_ = false;
            _alreadyFetchedUserCollectionViaPackage_ = false;
            _userCollectionViaPackage = new Auction.Entities.CollectionClasses.UserCollection(new UserEntityFactory());
            _alwaysFetchUserCollectionViaPackage = false;
            _alreadyFetchedUserCollectionViaPackage = false;
            _account = null;
            _accountReturnsNewIfNotFound = true;
            _alwaysFetchAccount = false;
            _alreadyFetchedAccount = false;

            PerformDependencyInjection();

            // __LLBLGENPRO_USER_CODE_REGION_START InitClassMembers
            // __LLBLGENPRO_USER_CODE_REGION_END

            OnInitClassMembersComplete();
        }
        /// <summary>Private CTor for deserialization</summary>
        /// <param name="info"></param>
        /// <param name="context"></param>
        protected UserEntity(SerializationInfo info, StreamingContext context)
            : base(info, context)
        {
            _auctionEvent_ = (Auction.Entities.CollectionClasses.AuctionEventCollection)info.GetValue("_auctionEvent_", typeof(Auction.Entities.CollectionClasses.AuctionEventCollection));
            _alwaysFetchAuctionEvent_ = info.GetBoolean("_alwaysFetchAuctionEvent_");
            _alreadyFetchedAuctionEvent_ = info.GetBoolean("_alreadyFetchedAuctionEvent_");
            _auctionEvent = (Auction.Entities.CollectionClasses.AuctionEventCollection)info.GetValue("_auctionEvent", typeof(Auction.Entities.CollectionClasses.AuctionEventCollection));
            _alwaysFetchAuctionEvent = info.GetBoolean("_alwaysFetchAuctionEvent");
            _alreadyFetchedAuctionEvent = info.GetBoolean("_alreadyFetchedAuctionEvent");
            _bidder = (Auction.Entities.CollectionClasses.BidderCollection)info.GetValue("_bidder", typeof(Auction.Entities.CollectionClasses.BidderCollection));
            _alwaysFetchBidder = info.GetBoolean("_alwaysFetchBidder");
            _alreadyFetchedBidder = info.GetBoolean("_alreadyFetchedBidder");
            _bidder_ = (Auction.Entities.CollectionClasses.BidderCollection)info.GetValue("_bidder_", typeof(Auction.Entities.CollectionClasses.BidderCollection));
            _alwaysFetchBidder_ = info.GetBoolean("_alwaysFetchBidder_");
            _alreadyFetchedBidder_ = info.GetBoolean("_alreadyFetchedBidder_");
            _donation = (Auction.Entities.CollectionClasses.DonationCollection)info.GetValue("_donation", typeof(Auction.Entities.CollectionClasses.DonationCollection));
            _alwaysFetchDonation = info.GetBoolean("_alwaysFetchDonation");
            _alreadyFetchedDonation = info.GetBoolean("_alreadyFetchedDonation");
            _donation_ = (Auction.Entities.CollectionClasses.DonationCollection)info.GetValue("_donation_", typeof(Auction.Entities.CollectionClasses.DonationCollection));
            _alwaysFetchDonation_ = info.GetBoolean("_alwaysFetchDonation_");
            _alreadyFetchedDonation_ = info.GetBoolean("_alreadyFetchedDonation_");
            _donor_ = (Auction.Entities.CollectionClasses.DonorCollection)info.GetValue("_donor_", typeof(Auction.Entities.CollectionClasses.DonorCollection));
            _alwaysFetchDonor_ = info.GetBoolean("_alwaysFetchDonor_");
            _alreadyFetchedDonor_ = info.GetBoolean("_alreadyFetchedDonor_");
            _donor = (Auction.Entities.CollectionClasses.DonorCollection)info.GetValue("_donor", typeof(Auction.Entities.CollectionClasses.DonorCollection));
            _alwaysFetchDonor = info.GetBoolean("_alwaysFetchDonor");
            _alreadyFetchedDonor = info.GetBoolean("_alreadyFetchedDonor");
            _expense = (Auction.Entities.CollectionClasses.ExpenseCollection)info.GetValue("_expense", typeof(Auction.Entities.CollectionClasses.ExpenseCollection));
            _alwaysFetchExpense = info.GetBoolean("_alwaysFetchExpense");
            _alreadyFetchedExpense = info.GetBoolean("_alreadyFetchedExpense");
            _expense_ = (Auction.Entities.CollectionClasses.ExpenseCollection)info.GetValue("_expense_", typeof(Auction.Entities.CollectionClasses.ExpenseCollection));
            _alwaysFetchExpense_ = info.GetBoolean("_alwaysFetchExpense_");
            _alreadyFetchedExpense_ = info.GetBoolean("_alreadyFetchedExpense_");
            _package__ = (Auction.Entities.CollectionClasses.PackageCollection)info.GetValue("_package__", typeof(Auction.Entities.CollectionClasses.PackageCollection));
            _alwaysFetchPackage__ = info.GetBoolean("_alwaysFetchPackage__");
            _alreadyFetchedPackage__ = info.GetBoolean("_alreadyFetchedPackage__");
            _package_ = (Auction.Entities.CollectionClasses.PackageCollection)info.GetValue("_package_", typeof(Auction.Entities.CollectionClasses.PackageCollection));
            _alwaysFetchPackage_ = info.GetBoolean("_alwaysFetchPackage_");
            _alreadyFetchedPackage_ = info.GetBoolean("_alreadyFetchedPackage_");
            _package = (Auction.Entities.CollectionClasses.PackageCollection)info.GetValue("_package", typeof(Auction.Entities.CollectionClasses.PackageCollection));
            _alwaysFetchPackage = info.GetBoolean("_alwaysFetchPackage");
            _alreadyFetchedPackage = info.GetBoolean("_alreadyFetchedPackage");
            _raffle = (Auction.Entities.CollectionClasses.RaffleCollection)info.GetValue("_raffle", typeof(Auction.Entities.CollectionClasses.RaffleCollection));
            _alwaysFetchRaffle = info.GetBoolean("_alwaysFetchRaffle");
            _alreadyFetchedRaffle = info.GetBoolean("_alreadyFetchedRaffle");
            _raffle_ = (Auction.Entities.CollectionClasses.RaffleCollection)info.GetValue("_raffle_", typeof(Auction.Entities.CollectionClasses.RaffleCollection));
            _alwaysFetchRaffle_ = info.GetBoolean("_alwaysFetchRaffle_");
            _alreadyFetchedRaffle_ = info.GetBoolean("_alreadyFetchedRaffle_");
            _user_ = (Auction.Entities.CollectionClasses.UserCollection)info.GetValue("_user_", typeof(Auction.Entities.CollectionClasses.UserCollection));
            _alwaysFetchUser_ = info.GetBoolean("_alwaysFetchUser_");
            _alreadyFetchedUser_ = info.GetBoolean("_alreadyFetchedUser_");
            _user___ = (Auction.Entities.CollectionClasses.UserCollection)info.GetValue("_user___", typeof(Auction.Entities.CollectionClasses.UserCollection));
            _alwaysFetchUser___ = info.GetBoolean("_alwaysFetchUser___");
            _alreadyFetchedUser___ = info.GetBoolean("_alreadyFetchedUser___");
            _accountCollectionViaAuctionEvent_ = (Auction.Entities.CollectionClasses.AccountCollection)info.GetValue("_accountCollectionViaAuctionEvent_", typeof(Auction.Entities.CollectionClasses.AccountCollection));
            _alwaysFetchAccountCollectionViaAuctionEvent_ = info.GetBoolean("_alwaysFetchAccountCollectionViaAuctionEvent_");
            _alreadyFetchedAccountCollectionViaAuctionEvent_ = info.GetBoolean("_alreadyFetchedAccountCollectionViaAuctionEvent_");
            _accountCollectionViaAuctionEvent = (Auction.Entities.CollectionClasses.AccountCollection)info.GetValue("_accountCollectionViaAuctionEvent", typeof(Auction.Entities.CollectionClasses.AccountCollection));
            _alwaysFetchAccountCollectionViaAuctionEvent = info.GetBoolean("_alwaysFetchAccountCollectionViaAuctionEvent");
            _alreadyFetchedAccountCollectionViaAuctionEvent = info.GetBoolean("_alreadyFetchedAccountCollectionViaAuctionEvent");
            _accountCollectionViaUser_ = (Auction.Entities.CollectionClasses.AccountCollection)info.GetValue("_accountCollectionViaUser_", typeof(Auction.Entities.CollectionClasses.AccountCollection));
            _alwaysFetchAccountCollectionViaUser_ = info.GetBoolean("_alwaysFetchAccountCollectionViaUser_");
            _alreadyFetchedAccountCollectionViaUser_ = info.GetBoolean("_alreadyFetchedAccountCollectionViaUser_");
            _accountCollectionViaUser = (Auction.Entities.CollectionClasses.AccountCollection)info.GetValue("_accountCollectionViaUser", typeof(Auction.Entities.CollectionClasses.AccountCollection));
            _alwaysFetchAccountCollectionViaUser = info.GetBoolean("_alwaysFetchAccountCollectionViaUser");
            _alreadyFetchedAccountCollectionViaUser = info.GetBoolean("_alreadyFetchedAccountCollectionViaUser");
            _accountCollectionViaDonor_ = (Auction.Entities.CollectionClasses.AccountCollection)info.GetValue("_accountCollectionViaDonor_", typeof(Auction.Entities.CollectionClasses.AccountCollection));
            _alwaysFetchAccountCollectionViaDonor_ = info.GetBoolean("_alwaysFetchAccountCollectionViaDonor_");
            _alreadyFetchedAccountCollectionViaDonor_ = info.GetBoolean("_alreadyFetchedAccountCollectionViaDonor_");
            _accountCollectionViaDonor = (Auction.Entities.CollectionClasses.AccountCollection)info.GetValue("_accountCollectionViaDonor", typeof(Auction.Entities.CollectionClasses.AccountCollection));
            _alwaysFetchAccountCollectionViaDonor = info.GetBoolean("_alwaysFetchAccountCollectionViaDonor");
            _alreadyFetchedAccountCollectionViaDonor = info.GetBoolean("_alreadyFetchedAccountCollectionViaDonor");
            _auctionEventCollectionViaExpense_ = (Auction.Entities.CollectionClasses.AuctionEventCollection)info.GetValue("_auctionEventCollectionViaExpense_", typeof(Auction.Entities.CollectionClasses.AuctionEventCollection));
            _alwaysFetchAuctionEventCollectionViaExpense_ = info.GetBoolean("_alwaysFetchAuctionEventCollectionViaExpense_");
            _alreadyFetchedAuctionEventCollectionViaExpense_ = info.GetBoolean("_alreadyFetchedAuctionEventCollectionViaExpense_");
            _auctionEventCollectionViaDonation_ = (Auction.Entities.CollectionClasses.AuctionEventCollection)info.GetValue("_auctionEventCollectionViaDonation_", typeof(Auction.Entities.CollectionClasses.AuctionEventCollection));
            _alwaysFetchAuctionEventCollectionViaDonation_ = info.GetBoolean("_alwaysFetchAuctionEventCollectionViaDonation_");
            _alreadyFetchedAuctionEventCollectionViaDonation_ = info.GetBoolean("_alreadyFetchedAuctionEventCollectionViaDonation_");
            _auctionEventCollectionViaDonation = (Auction.Entities.CollectionClasses.AuctionEventCollection)info.GetValue("_auctionEventCollectionViaDonation", typeof(Auction.Entities.CollectionClasses.AuctionEventCollection));
            _alwaysFetchAuctionEventCollectionViaDonation = info.GetBoolean("_alwaysFetchAuctionEventCollectionViaDonation");
            _alreadyFetchedAuctionEventCollectionViaDonation = info.GetBoolean("_alreadyFetchedAuctionEventCollectionViaDonation");
            _auctionEventCollectionViaBidder = (Auction.Entities.CollectionClasses.AuctionEventCollection)info.GetValue("_auctionEventCollectionViaBidder", typeof(Auction.Entities.CollectionClasses.AuctionEventCollection));
            _alwaysFetchAuctionEventCollectionViaBidder = info.GetBoolean("_alwaysFetchAuctionEventCollectionViaBidder");
            _alreadyFetchedAuctionEventCollectionViaBidder = info.GetBoolean("_alreadyFetchedAuctionEventCollectionViaBidder");
            _auctionEventCollectionViaBidder_ = (Auction.Entities.CollectionClasses.AuctionEventCollection)info.GetValue("_auctionEventCollectionViaBidder_", typeof(Auction.Entities.CollectionClasses.AuctionEventCollection));
            _alwaysFetchAuctionEventCollectionViaBidder_ = info.GetBoolean("_alwaysFetchAuctionEventCollectionViaBidder_");
            _alreadyFetchedAuctionEventCollectionViaBidder_ = info.GetBoolean("_alreadyFetchedAuctionEventCollectionViaBidder_");
            _auctionEventCollectionViaRaffle_ = (Auction.Entities.CollectionClasses.AuctionEventCollection)info.GetValue("_auctionEventCollectionViaRaffle_", typeof(Auction.Entities.CollectionClasses.AuctionEventCollection));
            _alwaysFetchAuctionEventCollectionViaRaffle_ = info.GetBoolean("_alwaysFetchAuctionEventCollectionViaRaffle_");
            _alreadyFetchedAuctionEventCollectionViaRaffle_ = info.GetBoolean("_alreadyFetchedAuctionEventCollectionViaRaffle_");
            _auctionEventCollectionViaExpense = (Auction.Entities.CollectionClasses.AuctionEventCollection)info.GetValue("_auctionEventCollectionViaExpense", typeof(Auction.Entities.CollectionClasses.AuctionEventCollection));
            _alwaysFetchAuctionEventCollectionViaExpense = info.GetBoolean("_alwaysFetchAuctionEventCollectionViaExpense");
            _alreadyFetchedAuctionEventCollectionViaExpense = info.GetBoolean("_alreadyFetchedAuctionEventCollectionViaExpense");
            _auctionEventCollectionViaRaffle = (Auction.Entities.CollectionClasses.AuctionEventCollection)info.GetValue("_auctionEventCollectionViaRaffle", typeof(Auction.Entities.CollectionClasses.AuctionEventCollection));
            _alwaysFetchAuctionEventCollectionViaRaffle = info.GetBoolean("_alwaysFetchAuctionEventCollectionViaRaffle");
            _alreadyFetchedAuctionEventCollectionViaRaffle = info.GetBoolean("_alreadyFetchedAuctionEventCollectionViaRaffle");
            _auctionEventCollectionViaPackage__ = (Auction.Entities.CollectionClasses.AuctionEventCollection)info.GetValue("_auctionEventCollectionViaPackage__", typeof(Auction.Entities.CollectionClasses.AuctionEventCollection));
            _alwaysFetchAuctionEventCollectionViaPackage__ = info.GetBoolean("_alwaysFetchAuctionEventCollectionViaPackage__");
            _alreadyFetchedAuctionEventCollectionViaPackage__ = info.GetBoolean("_alreadyFetchedAuctionEventCollectionViaPackage__");
            _auctionEventCollectionViaPackage_ = (Auction.Entities.CollectionClasses.AuctionEventCollection)info.GetValue("_auctionEventCollectionViaPackage_", typeof(Auction.Entities.CollectionClasses.AuctionEventCollection));
            _alwaysFetchAuctionEventCollectionViaPackage_ = info.GetBoolean("_alwaysFetchAuctionEventCollectionViaPackage_");
            _alreadyFetchedAuctionEventCollectionViaPackage_ = info.GetBoolean("_alreadyFetchedAuctionEventCollectionViaPackage_");
            _auctionEventCollectionViaPackage = (Auction.Entities.CollectionClasses.AuctionEventCollection)info.GetValue("_auctionEventCollectionViaPackage", typeof(Auction.Entities.CollectionClasses.AuctionEventCollection));
            _alwaysFetchAuctionEventCollectionViaPackage = info.GetBoolean("_alwaysFetchAuctionEventCollectionViaPackage");
            _alreadyFetchedAuctionEventCollectionViaPackage = info.GetBoolean("_alreadyFetchedAuctionEventCollectionViaPackage");
            _bidderCollectionViaPackage = (Auction.Entities.CollectionClasses.BidderCollection)info.GetValue("_bidderCollectionViaPackage", typeof(Auction.Entities.CollectionClasses.BidderCollection));
            _alwaysFetchBidderCollectionViaPackage = info.GetBoolean("_alwaysFetchBidderCollectionViaPackage");
            _alreadyFetchedBidderCollectionViaPackage = info.GetBoolean("_alreadyFetchedBidderCollectionViaPackage");
            _bidderCollectionViaPackage__ = (Auction.Entities.CollectionClasses.BidderCollection)info.GetValue("_bidderCollectionViaPackage__", typeof(Auction.Entities.CollectionClasses.BidderCollection));
            _alwaysFetchBidderCollectionViaPackage__ = info.GetBoolean("_alwaysFetchBidderCollectionViaPackage__");
            _alreadyFetchedBidderCollectionViaPackage__ = info.GetBoolean("_alreadyFetchedBidderCollectionViaPackage__");
            _bidderCollectionViaPackage_ = (Auction.Entities.CollectionClasses.BidderCollection)info.GetValue("_bidderCollectionViaPackage_", typeof(Auction.Entities.CollectionClasses.BidderCollection));
            _alwaysFetchBidderCollectionViaPackage_ = info.GetBoolean("_alwaysFetchBidderCollectionViaPackage_");
            _alreadyFetchedBidderCollectionViaPackage_ = info.GetBoolean("_alreadyFetchedBidderCollectionViaPackage_");
            _categoryCollectionViaPackage = (Auction.Entities.CollectionClasses.CategoryCollection)info.GetValue("_categoryCollectionViaPackage", typeof(Auction.Entities.CollectionClasses.CategoryCollection));
            _alwaysFetchCategoryCollectionViaPackage = info.GetBoolean("_alwaysFetchCategoryCollectionViaPackage");
            _alreadyFetchedCategoryCollectionViaPackage = info.GetBoolean("_alreadyFetchedCategoryCollectionViaPackage");
            _categoryCollectionViaPackage_ = (Auction.Entities.CollectionClasses.CategoryCollection)info.GetValue("_categoryCollectionViaPackage_", typeof(Auction.Entities.CollectionClasses.CategoryCollection));
            _alwaysFetchCategoryCollectionViaPackage_ = info.GetBoolean("_alwaysFetchCategoryCollectionViaPackage_");
            _alreadyFetchedCategoryCollectionViaPackage_ = info.GetBoolean("_alreadyFetchedCategoryCollectionViaPackage_");
            _categoryCollectionViaPackage__ = (Auction.Entities.CollectionClasses.CategoryCollection)info.GetValue("_categoryCollectionViaPackage__", typeof(Auction.Entities.CollectionClasses.CategoryCollection));
            _alwaysFetchCategoryCollectionViaPackage__ = info.GetBoolean("_alwaysFetchCategoryCollectionViaPackage__");
            _alreadyFetchedCategoryCollectionViaPackage__ = info.GetBoolean("_alreadyFetchedCategoryCollectionViaPackage__");
            _donorCollectionViaDonation_ = (Auction.Entities.CollectionClasses.DonorCollection)info.GetValue("_donorCollectionViaDonation_", typeof(Auction.Entities.CollectionClasses.DonorCollection));
            _alwaysFetchDonorCollectionViaDonation_ = info.GetBoolean("_alwaysFetchDonorCollectionViaDonation_");
            _alreadyFetchedDonorCollectionViaDonation_ = info.GetBoolean("_alreadyFetchedDonorCollectionViaDonation_");
            _donorCollectionViaDonation = (Auction.Entities.CollectionClasses.DonorCollection)info.GetValue("_donorCollectionViaDonation", typeof(Auction.Entities.CollectionClasses.DonorCollection));
            _alwaysFetchDonorCollectionViaDonation = info.GetBoolean("_alwaysFetchDonorCollectionViaDonation");
            _alreadyFetchedDonorCollectionViaDonation = info.GetBoolean("_alreadyFetchedDonorCollectionViaDonation");
            _packageCollectionViaDonation_ = (Auction.Entities.CollectionClasses.PackageCollection)info.GetValue("_packageCollectionViaDonation_", typeof(Auction.Entities.CollectionClasses.PackageCollection));
            _alwaysFetchPackageCollectionViaDonation_ = info.GetBoolean("_alwaysFetchPackageCollectionViaDonation_");
            _alreadyFetchedPackageCollectionViaDonation_ = info.GetBoolean("_alreadyFetchedPackageCollectionViaDonation_");
            _packageCollectionViaDonation = (Auction.Entities.CollectionClasses.PackageCollection)info.GetValue("_packageCollectionViaDonation", typeof(Auction.Entities.CollectionClasses.PackageCollection));
            _alwaysFetchPackageCollectionViaDonation = info.GetBoolean("_alwaysFetchPackageCollectionViaDonation");
            _alreadyFetchedPackageCollectionViaDonation = info.GetBoolean("_alreadyFetchedPackageCollectionViaDonation");
            _roleCollectionViaUser = (Auction.Entities.CollectionClasses.RoleCollection)info.GetValue("_roleCollectionViaUser", typeof(Auction.Entities.CollectionClasses.RoleCollection));
            _alwaysFetchRoleCollectionViaUser = info.GetBoolean("_alwaysFetchRoleCollectionViaUser");
            _alreadyFetchedRoleCollectionViaUser = info.GetBoolean("_alreadyFetchedRoleCollectionViaUser");
            _roleCollectionViaUser_ = (Auction.Entities.CollectionClasses.RoleCollection)info.GetValue("_roleCollectionViaUser_", typeof(Auction.Entities.CollectionClasses.RoleCollection));
            _alwaysFetchRoleCollectionViaUser_ = info.GetBoolean("_alwaysFetchRoleCollectionViaUser_");
            _alreadyFetchedRoleCollectionViaUser_ = info.GetBoolean("_alreadyFetchedRoleCollectionViaUser_");
            _account = (AccountEntity)info.GetValue("_account", typeof(AccountEntity));
            if(_account!=null)
            {
                _account.AfterSave+=new EventHandler(OnEntityAfterSave);
            }
            _accountReturnsNewIfNotFound = info.GetBoolean("_accountReturnsNewIfNotFound");
            _alwaysFetchAccount = info.GetBoolean("_alwaysFetchAccount");
            _alreadyFetchedAccount = info.GetBoolean("_alreadyFetchedAccount");
            _role = (RoleEntity)info.GetValue("_role", typeof(RoleEntity));
            if(_role!=null)
            {
                _role.AfterSave+=new EventHandler(OnEntityAfterSave);
            }
            _roleReturnsNewIfNotFound = info.GetBoolean("_roleReturnsNewIfNotFound");
            _alwaysFetchRole = info.GetBoolean("_alwaysFetchRole");
            _alreadyFetchedRole = info.GetBoolean("_alreadyFetchedRole");
            _user = (UserEntity)info.GetValue("_user", typeof(UserEntity));
            if(_user!=null)
            {
                _user.AfterSave+=new EventHandler(OnEntityAfterSave);
            }
            _userReturnsNewIfNotFound = info.GetBoolean("_userReturnsNewIfNotFound");
            _alwaysFetchUser = info.GetBoolean("_alwaysFetchUser");
            _alreadyFetchedUser = info.GetBoolean("_alreadyFetchedUser");
            _user__ = (UserEntity)info.GetValue("_user__", typeof(UserEntity));
            if(_user__!=null)
            {
                _user__.AfterSave+=new EventHandler(OnEntityAfterSave);
            }
            _user__ReturnsNewIfNotFound = info.GetBoolean("_user__ReturnsNewIfNotFound");
            _alwaysFetchUser__ = info.GetBoolean("_alwaysFetchUser__");
            _alreadyFetchedUser__ = info.GetBoolean("_alreadyFetchedUser__");

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

            // __LLBLGENPRO_USER_CODE_REGION_START DeserializationConstructor
            // __LLBLGENPRO_USER_CODE_REGION_END
        }
        /// <summary>Private CTor for deserialization</summary>
        /// <param name="info"></param>
        /// <param name="context"></param>
        protected CategoryEntity(SerializationInfo info, StreamingContext context)
            : base(info, context)
        {
            _package = (Auction.Entities.CollectionClasses.PackageCollection)info.GetValue("_package", typeof(Auction.Entities.CollectionClasses.PackageCollection));
            _alwaysFetchPackage = info.GetBoolean("_alwaysFetchPackage");
            _alreadyFetchedPackage = info.GetBoolean("_alreadyFetchedPackage");
            _auctionEventCollectionViaPackage = (Auction.Entities.CollectionClasses.AuctionEventCollection)info.GetValue("_auctionEventCollectionViaPackage", typeof(Auction.Entities.CollectionClasses.AuctionEventCollection));
            _alwaysFetchAuctionEventCollectionViaPackage = info.GetBoolean("_alwaysFetchAuctionEventCollectionViaPackage");
            _alreadyFetchedAuctionEventCollectionViaPackage = info.GetBoolean("_alreadyFetchedAuctionEventCollectionViaPackage");
            _bidderCollectionViaPackage = (Auction.Entities.CollectionClasses.BidderCollection)info.GetValue("_bidderCollectionViaPackage", typeof(Auction.Entities.CollectionClasses.BidderCollection));
            _alwaysFetchBidderCollectionViaPackage = info.GetBoolean("_alwaysFetchBidderCollectionViaPackage");
            _alreadyFetchedBidderCollectionViaPackage = info.GetBoolean("_alreadyFetchedBidderCollectionViaPackage");
            _userCollectionViaPackage__ = (Auction.Entities.CollectionClasses.UserCollection)info.GetValue("_userCollectionViaPackage__", typeof(Auction.Entities.CollectionClasses.UserCollection));
            _alwaysFetchUserCollectionViaPackage__ = info.GetBoolean("_alwaysFetchUserCollectionViaPackage__");
            _alreadyFetchedUserCollectionViaPackage__ = info.GetBoolean("_alreadyFetchedUserCollectionViaPackage__");
            _userCollectionViaPackage_ = (Auction.Entities.CollectionClasses.UserCollection)info.GetValue("_userCollectionViaPackage_", typeof(Auction.Entities.CollectionClasses.UserCollection));
            _alwaysFetchUserCollectionViaPackage_ = info.GetBoolean("_alwaysFetchUserCollectionViaPackage_");
            _alreadyFetchedUserCollectionViaPackage_ = info.GetBoolean("_alreadyFetchedUserCollectionViaPackage_");
            _userCollectionViaPackage = (Auction.Entities.CollectionClasses.UserCollection)info.GetValue("_userCollectionViaPackage", typeof(Auction.Entities.CollectionClasses.UserCollection));
            _alwaysFetchUserCollectionViaPackage = info.GetBoolean("_alwaysFetchUserCollectionViaPackage");
            _alreadyFetchedUserCollectionViaPackage = info.GetBoolean("_alreadyFetchedUserCollectionViaPackage");
            _account = (AccountEntity)info.GetValue("_account", typeof(AccountEntity));
            if(_account!=null)
            {
                _account.AfterSave+=new EventHandler(OnEntityAfterSave);
            }
            _accountReturnsNewIfNotFound = info.GetBoolean("_accountReturnsNewIfNotFound");
            _alwaysFetchAccount = info.GetBoolean("_alwaysFetchAccount");
            _alreadyFetchedAccount = info.GetBoolean("_alreadyFetchedAccount");

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

            // __LLBLGENPRO_USER_CODE_REGION_START DeserializationConstructor
            // __LLBLGENPRO_USER_CODE_REGION_END
        }