コード例 #1
0
        public List <RecipeCuisine> MapToRecipeCuisines(RecipeRequest recipeRequest)
        {
            var cuisinesRecipeCuisines = new List <RecipeCuisine>();

            foreach (var cuisines in recipeRequest.Cuisine)
            {
                if (!String.IsNullOrWhiteSpace(cuisines))
                {
                    var recipeCuisine = new RecipeCuisine();
                    {
                        if (CheckCuisine(cuisines))
                        {
                            var cuisine = GetCuisineId(cuisines);
                            recipeCuisine.Cuisine   = cuisine;
                            recipeCuisine.CuisineId = cuisine.CuisineId;
                        }
                        else
                        {
                            var mapToCuisine = MapToCuisine(cuisines);
                            recipeCuisine.CuisineId = mapToCuisine.CuisineId;
                            recipeCuisine.Cuisine   = mapToCuisine;
                        }
                    }
                    cuisinesRecipeCuisines.Add(recipeCuisine);
                }
            }
            return(cuisinesRecipeCuisines);
        }
コード例 #2
0
        // work out if the cuisine already exists, if it does then use it for the mapping table, else create it
        private static void addCuisines(RecipeObj recipe)
        {
            using (var context = new WoolworthsDBDataContext())
            {
                // clear the current mappings
                var maps = context.RecipeCuisineMaps.Where(r => r.RecipeID == recipe.RecipeID);
                context.RecipeCuisineMaps.DeleteAllOnSubmit(maps);
                context.SubmitChanges();

                if (recipe.Cuisines == null)
                {
                    return;
                }

                foreach (var cuisine in recipe.Cuisines)
                {
                    // create or retrieve the RecipeCuisine.ID value
                    var master          = context.RecipeCuisines.SingleOrDefault(c => c.Description == cuisine.Cuisine);
                    var recipeCuisineID = 0;
                    if (master == null)
                    {
                        var toCreate = new RecipeCuisine()
                        {
                            Description = cuisine.Cuisine
                        };
                        context.RecipeCuisines.InsertOnSubmit(toCreate);
                        context.SubmitChanges();
                        recipeCuisineID = toCreate.ID;
                    }
                    else
                    {
                        recipeCuisineID = master.ID;
                    }

                    // add to the mapping table
                    var map = new RecipeCuisineMap()
                    {
                        RecipeCuisineID = recipeCuisineID,
                        RecipeID        = recipe.RecipeID
                    };
                    context.RecipeCuisineMaps.InsertOnSubmit(map);
                    context.SubmitChanges();
                }
            }
        }
コード例 #3
0
        // work out if the cuisine already exists, if it does then use it for the mapping table, else create it
        private void addCuisines(RecipeObj recipe)
        {
            using (var context = new WoolworthsDBDataContext())
            {
                // clear the current mappings
                var maps = context.RecipeCuisineMaps.Where(r => r.RecipeID == recipe.RecipeID);
                context.RecipeCuisineMaps.DeleteAllOnSubmit(maps);
                context.SubmitChanges();

                if (recipe.Cuisines == null)
                    return;

                foreach (var cuisine in recipe.Cuisines)
                {
                    // create or retrieve the RecipeCuisine.ID value
                    var master = context.RecipeCuisines.SingleOrDefault(c => c.Description == cuisine.Cuisine);
                    var recipeCuisineID = 0;
                    if (master == null)
                    {
                        var toCreate = new RecipeCuisine()
                        {
                            Description = cuisine.Cuisine
                        };
                        context.RecipeCuisines.InsertOnSubmit(toCreate);
                        context.SubmitChanges();
                        recipeCuisineID = toCreate.ID;
                    }
                    else
                    {
                        recipeCuisineID = master.ID;
                    }

                    // add to the mapping table
                    var map = new RecipeCuisineMap()
                    {
                        RecipeCuisineID = recipeCuisineID,
                        RecipeID = recipe.RecipeID
                    };
                    context.RecipeCuisineMaps.InsertOnSubmit(map);
                    context.SubmitChanges();
                }
            }
        }