コード例 #1
0
        /// <summary>
        /// TODO: Remove this when refactoring AbstractAccountStoreMapping (breaking change)
        /// </summary>
        /// <typeparam name="TMapping">The Account Store Mapping type.</typeparam>
        /// <param name="mapping">The account store mapping.</param>
        /// <param name="container">The container object (an Application or Organization).</param>
        private static void SetContainer <TMapping>(IAccountStoreMapping <TMapping> mapping, IAccountStoreContainer <TMapping> container)
            where TMapping : class, IAccountStoreMapping <TMapping>
        {
            var asApplication = container as IApplication;

            if (asApplication != null)
            {
                mapping.SetApplication(asApplication);
                return;
            }

            var asOrganization = container as IOrganization;

            if (asOrganization != null)
            {
                (mapping as IOrganizationAccountStoreMapping).SetOrganization(asOrganization);
                return;
            }

            throw new NotImplementedException("Unknown container type!");
        }