/// <summary>
        /// Add / Update Business Partner Sub Type
        /// </summary>
        public BusinessPartnerSubType AddUpdateBusinessPartnerSubType(BusinessPartnerSubType businessPartnerSubType)
        {
            BusinessPartnerSubType dbVersion = businessPartnerSubTypeRepository.Find(businessPartnerSubType.BusinessPartnerSubTypeId);

            if (businessPartnerSubTypeRepository.BusinessPartnerSubTypeCodeDuplicationCheck(businessPartnerSubType))
            {
                throw new CaresException(Resources.BusinessPartner.BusinessPartnerSubType.BusinessPartnerSubTypeCodeDuplicationError);
            }

            if (dbVersion != null)
            {
                UpdateBusinessPartnerSubTypeProperties(businessPartnerSubType, dbVersion);
                businessPartnerSubTypeRepository.Update(dbVersion);
            }
            else
            {
                dbVersion = new BusinessPartnerSubType();
                SetBusinessPartnerSubTypeProperties(businessPartnerSubType, dbVersion);
                businessPartnerSubTypeRepository.Add(dbVersion);
            }
            businessPartnerSubTypeRepository.SaveChanges();
            // To Load the proprties
            return(businessPartnerSubTypeRepository.LoadBusinessPartnerSubTypeWithDetail(dbVersion.BusinessPartnerSubTypeId));
        }