public static Database.Recipes.Recipe ToDatabaseModel(Domain.Recipe d) { if (d == null) { return(null); } var db = new Database.Recipes.Recipe { Id = d.Id, Name = d.Name, Steps = d.Steps, PlannedRecipes = new List <Database.Recipes.PlannedRecipe>() }; db.RecipeItems = d.Ingredients?.Select(ingredient => new Database.Items.RecipeItem { Item = ToDatabaseModel(ingredient.Item), Recipe = db })?.ToList() ?? null; db.Tags = d.Tags?.Select(tag => new Database.Tagging.RecipeTag { Tag = ToDatabaseModel(tag), Recipe = db })?.ToList() ?? null; return(db); }
// ==================================== Recipe ==================================== public static Domain.Recipe ToDomainModel(Database.Recipes.Recipe db) { if (db == null) { return(null); } return(new Domain.Recipe { Id = db.Id, Name = db.Name, Steps = db.Steps, Ingredients = db.RecipeItems? .Select(recipeItem => ToDomainModel(recipeItem))? .ToList() ?? null, Tags = db.Tags? .Select(recipeTag => ToDomainModel(recipeTag.Tag))? .ToList() ?? null }); }
private List <DB.Items.Item> GetDbItemsOfRecipe(DB.Recipes.Recipe recipe) { return(recipe.RecipeItems.Select(recipeItem => recipeItem.Item).ToList()); }