Esempio n. 1
0
        /// <summary>
        /// Get list of all OrganizationCategories.
        /// </summary>
        /// <param name="context">Web service request context.</param>
        /// <returns>A list of OrganizationCategories.</returns>
        public static List <WebOrganizationCategory> GetOrganizationCategories(WebServiceContext context)
        {
            String cacheKey;
            List <WebOrganizationCategory> organizationCategories;
            WebOrganizationCategory        organizationCategory;

            // Get cached information.
            cacheKey = GetOrganizationCategoriesCacheKey(context.Locale.Id);
            organizationCategories = (List <WebOrganizationCategory>)context.GetCachedObject(cacheKey);

            // Data not in cache - store it in the cache
            if (organizationCategories.IsNull())
            {
                // Get data from database.
                using (DataReader dataReader = context.GetUserDatabase().GetOrganizationCategories(context.Locale.Id))
                {
                    organizationCategories = new List <WebOrganizationCategory>();
                    while (dataReader.Read())
                    {
                        organizationCategory = new WebOrganizationCategory();
                        organizationCategory.LoadData(dataReader);
                        organizationCategories.Add(organizationCategory);
                    }
                }

                // Add information to cache.
                context.AddCachedObject(cacheKey, organizationCategories, DateTime.Now + new TimeSpan(1, 0, 0, 0), CacheItemPriority.High);
            }

            return(organizationCategories);
        }
Esempio n. 2
0
        /// <summary>
        /// Get OrganizationCategory.
        /// </summary>
        /// <param name="context">Web service request context.</param>
        /// <param name="organizationCategoryId">Id for OrganizationCategory</param>
        /// <returns>A list of OrganizationCategories.</returns>
        public static WebOrganizationCategory GetOrganizationCategory(WebServiceContext context, Int32 organizationCategoryId)
        {
            WebOrganizationCategory organizationCategory;

            //GetData from Database.
            using (DataReader dataReader = context.GetUserDatabase().GetOrganizationCategory(organizationCategoryId, context.Locale.Id))
            {
                if (dataReader.Read())
                {
                    organizationCategory = new WebOrganizationCategory();
                    organizationCategory.LoadData(dataReader);
                }
                else
                {
                    throw new ArgumentException("OrganizationCategory not found. OrganizationCategoryId = " + organizationCategoryId);
                }
            }
            return(organizationCategory);
        }