コード例 #1
0
        public async Task <Session_ViewOptionsData> GetViewOptions(string userId)
        {
            using var log = BeginFunction(nameof(SessionUserService), nameof(GetViewOptions), userId);
            try
            {
                if (userId != null)
                {
                    await Assert(SecurityPolicy.IsAuthorized, userId).ConfigureAwait(false);
                }

                if (m_cachedViewOptions == null)
                {
                    m_cachedViewOptions = LoadViewOptions();
                }

                var result = m_cachedViewOptions;

                log.Result(result);
                return(result);
            }
            catch (Exception ex)
            {
                log.Exception(ex);
                throw;
            }
        }
コード例 #2
0
        private Session_ViewOptionsData LoadViewOptions()
        {
            var ecommerceValue          = EcommerceWebsitePropertyValues.Default;
            var publicRegistrationValue = PublicRegistrationWebsitePropertyValues.Default;

            foreach (var svcWebsiteValue in DomainMicroService.GetWebsiteValues())
            {
                if (svcWebsiteValue.PropertyName == WebsitePropertyNames.Ecommerce)
                {
                    ecommerceValue = svcWebsiteValue.PropertyValue;
                }
                else if (svcWebsiteValue.PropertyName == WebsitePropertyNames.PublicRegistration)
                {
                    publicRegistrationValue = svcWebsiteValue.PropertyValue;
                }
            }

            var result = new Session_ViewOptionsData()
            {
                EcommerceEnabled          = ecommerceValue == EcommerceWebsitePropertyValues.Enabled,
                PublicRegistrationEnabled = publicRegistrationValue == PublicRegistrationWebsitePropertyValues.Enabled
            };

            return(result);
        }