Пример #1
0
        /// <summary>
        /// Inserts a list of individual category ids into the database.
        /// </summary>
        /// <param name="context">Web service request context.</param>
        /// <param name="individualCategoryIds">Id for individual categories to insert.</param>
        /// <param name="individualCategoryUsage">How user selected individual categories should be used.</param>
        public static void AddUserSelectedIndividualCategories(WebServiceContext context,
                                                               List <Int32> individualCategoryIds,
                                                               UserSelectedIndividualCategoryUsage individualCategoryUsage)
        {
            DataColumn column;
            DataRow    row;
            DataTable  individualCategoryTable;

            if (individualCategoryIds.IsNotEmpty())
            {
                // Delete all individual categories that belong to this request from the "temporary" tables.
                // This is done to avoid problem with restarts of the webservice.
                DeleteUserSelectedIndividualCategories(context);

                // Insert the new list of individual categories.
                individualCategoryTable = new DataTable(UserSelectedIndividualCategoryData.TABLE_NAME);
                column = new DataColumn(UserSelectedIndividualCategoryData.REQUEST_ID, typeof(Int32));
                individualCategoryTable.Columns.Add(column);
                column = new DataColumn(UserSelectedIndividualCategoryData.INDIVIDUAL_CATEGORY_ID, typeof(Int32));
                individualCategoryTable.Columns.Add(column);
                column = new DataColumn(UserSelectedIndividualCategoryData.INDIVIDUAL_CATEGORY_USAGE, typeof(String));
                individualCategoryTable.Columns.Add(column);
                foreach (Int32 individualCategoryId in individualCategoryIds)
                {
                    row    = individualCategoryTable.NewRow();
                    row[0] = context.RequestId;
                    row[1] = individualCategoryId;
                    row[2] = individualCategoryUsage.ToString();
                    individualCategoryTable.Rows.Add(row);
                }
                DataServer.AddUserSelectedIndividualCategories(context, individualCategoryTable);
            }
        }