private void Load_Hot_recipe() //點選切換跳轉 { PageControl.SelectedIndex = 1; var q = ((from l in dbcontext.LikeRecipe_Table.AsEnumerable() group l by new { l.Recipe_Table.RecipeName, l.RecipeID, l.Recipe_Table.PostTime.Year, l.Recipe_Table.DisVisible, l.Recipe_Table.DeleteOrNot, l.Member_Table.Nickname, l.Recipe_Table.Picture, l.Recipe_Table.Views, season = SeasonSort(l.Recipe_Table.PostTime.Month) } into g where g.Key.season == "第二季" && g.Key.Year == DateTime.Now.Year && g.Key.DisVisible == false && g.Key.DeleteOrNot == false select new { g.Key.RecipeName, g.Key.RecipeID, g.Key.Nickname, g.Key.Picture, g.Key.Views, LikeCount = g.Count(), }).OrderByDescending(r => r.LikeCount).Take(5)).ToList(); foreach (var item in q) { RecipeControl recipe = new RecipeControl(item.RecipeID); recipe.setAll(item.Picture, item.RecipeName, item.Nickname, item.Views, item.LikeCount); flp_HotRecipe.Controls.Add(recipe); } }
private void LoadRecipe() { flp_LikeRecipe.Controls.Clear(); int result; if (int.TryParse(lbox_FolderID.Text, out result)) { var q = (from c in dbcontext.Collection_Table.AsEnumerable() let like = (from r2 in dbcontext.LikeRecipe_Table.AsEnumerable() where r2.RecipeID == c.ReicipeID select r2).Count() where c.CollectionFolderID == result select new { c.ReicipeID, c.Recipe_Table.RecipeName, c.Recipe_Table.Member_Table.Nickname, c.Recipe_Table.Picture, c.Recipe_Table.Views, like = like }).ToList(); foreach (var item in q) { RecipeControl recipe = new RecipeControl(item.ReicipeID); recipe.setAll(item.Picture, item.RecipeName, item.Nickname, item.Views, item.like); recipe.ContextMenuStrip = contextMenuStrip1; flp_LikeRecipe.Controls.Add(recipe); } //foreach (var item in q) //{ // Panel p = new Panel(); // Label l = new Label(); // PictureBox pb = new PictureBox(); // MemoryStream ms = new MemoryStream(item.Picture); // pb.Image = Image.FromStream(ms); // l.Text = item.RecipeName; // pb.BackColor = Color.AliceBlue; // p.Controls.Add(l); // p.Controls.Add(pb); // p.ContextMenuStrip = contextMenuStrip1; // p.Name = item.ReicipeID.ToString(); // flp_LikeRecipe.Controls.Add(p); //} } else { return; } }
private void Load_All_recipe() { var q = (from r in dbcontext.Recipe_Table.AsEnumerable() let like = (from r2 in dbcontext.LikeRecipe_Table.AsEnumerable() where r2.RecipeID == r.RecipeID select r2).Count() select new { r.RecipeID, r.Picture, r.RecipeName, r.Member_Table.Nickname, r.Views, like = like }).ToList(); foreach (var item in q) { RecipeControl recipe = new RecipeControl(item.RecipeID); recipe.setAll(item.Picture, item.RecipeName, item.Nickname, item.Views, item.like); flp_AllRecipe.Controls.Add(recipe); } }
private void LoadMyRecipe() { var q = (from r in dbcontext.Recipe_Table let like = (from r2 in dbcontext.LikeRecipe_Table.AsEnumerable() where r2.RecipeID == r.RecipeID select r2).Count() where r.MemberID == memberData.MemberID select new { r.RecipeID, r.Picture, r.RecipeName, r.Member_Table.Nickname, r.Views, like = like, r.DisVisible, r.DeleteOrNot }).ToList(); foreach (var item in q) { if (!item.DeleteOrNot && !item.DisVisible) { RecipeControl recipe = new RecipeControl(item.RecipeID); recipe.setAll(item.Picture, item.RecipeName, item.Nickname, item.Views, item.like); flp_myRecipe.Controls.Add(recipe); } else if (item.DeleteOrNot) { RecipeControl recipe = new RecipeControl(item.RecipeID, Color.Red); recipe.setAll(item.Picture, "此食譜已刪除", item.Nickname, item.Views, item.like); flp_myRecipe.Controls.Add(recipe); } else { RecipeControl recipe = new RecipeControl(item.RecipeID, Color.Black); recipe.setAll(item.Picture, "此食譜已被檢舉", item.Nickname, item.Views, item.like); flp_myRecipe.Controls.Add(recipe); } } }
private void Category_Search(string CategoryName) { var q = from r in dbcontext.Recipe_Table let like = (from r2 in dbcontext.LikeRecipe_Table.AsEnumerable() where r2.RecipeID == r.RecipeID select r2).Count() where r.RecipeCategory_Table.RecipeCategory == CategoryName && r.DeleteOrNot == false && r.DisVisible == false select new { r.Picture, r.RecipeName, r.Member_Table.Nickname, r.Views, r.RecipeID, like = like }; flp_Search.Controls.Clear(); foreach (var item in q) { RecipeControl recipe = new RecipeControl(item.RecipeID); recipe.setAll(item.Picture, item.RecipeName, item.Nickname, item.Views, item.like); flp_Search.Controls.Add(recipe); } }
private void btn_Search_Click(object sender, EventArgs e) { List <Recipe_Table> recipes = new List <Recipe_Table>(); PageControl.SelectedIndex = 1; if (cb_Sort.SelectedIndex == 0) { string s = tb_SearchValue.Text; string[] s2 = s.Split(' '); for (int i = 0; i < s2.Length; i++) { var q = (from r in dbcontext.Recipe_Table.AsEnumerable() where r.RecipeName.Contains(s2[i]) && r.DisVisible == false && r.DisVisible == false select r).ToList(); if (q.Count != 0) { recipes.AddRange(q); } } var q1 = from r in recipes let like = (from r2 in dbcontext.LikeRecipe_Table.AsEnumerable() where r2.RecipeID == r.RecipeID select r2).Count() select new { r.Picture, r.RecipeName, r.Member_Table.Nickname, r.Views, r.RecipeID, like = like }; flp_Search.Controls.Clear(); foreach (var item in q1) { RecipeControl recipe = new RecipeControl(item.RecipeID); recipe.setAll(item.Picture, item.RecipeName, item.Nickname, item.Views, item.like); flp_Search.Controls.Add(recipe); } } if (cb_Sort.SelectedIndex == 1) { var q2 = (from r in dbcontext.Recipe_Table let like = (from r2 in dbcontext.LikeRecipe_Table.AsEnumerable() where r2.RecipeID == r.RecipeID select r2).Count() where r.Member_Table.Nickname.Contains(tb_SearchValue.Text) && r.DisVisible == false && r.DisVisible == false select new { r.Picture, r.RecipeName, r.Member_Table.Nickname, r.Views, r.RecipeID, like = like }).ToList(); if (q2.Count != 0) { flp_Search.Controls.Clear(); foreach (var item in q2) { RecipeControl recipe = new RecipeControl(item.RecipeID); recipe.setAll(item.Picture, item.RecipeName, item.Nickname, item.Views, item.like); flp_Search.Controls.Add(recipe); } } else { MessageBox.Show("查無此作者"); } } if (cb_Sort.SelectedIndex == 2)//食材找食譜 { int[] tagids = sbt.IngdStringToIngdIds(dbcontext, tb_SearchValue.Text, checkBox1.Checked); int[] recipeids = sbt.IngdIdsToRecipeIds(dbcontext, tagids, !checkBox2.Checked); var hrecipes = dbcontext.Recipe_Table.Where(r => recipeids.Contains(r.RecipeID) && r.DisVisible == false && r.DeleteOrNot == false).Select(r => r); var hrecipes2 = (from r in hrecipes let like = (from r2 in dbcontext.LikeRecipe_Table.AsEnumerable() where r2.RecipeID == r.RecipeID select r2).Count() select new { r.Picture, r.RecipeName, r.Member_Table.Nickname, r.Views, r.RecipeID, like = like }).ToList(); flp_Search.Controls.Clear(); foreach (var item in hrecipes2) { RecipeControl recipe = new RecipeControl(item.RecipeID); recipe.setAll(item.Picture, item.RecipeName, item.Nickname, item.Views, item.like); flp_Search.Controls.Add(recipe); } string stchar = "TagIds:"; foreach (int id in tagids) { stchar += id.ToString() + ","; } } if (cb_Sort.SelectedIndex == 3)//HashTag找食譜 { int[] tagids = sbt.TagsStringToTagIds(dbcontext, tb_SearchValue.Text, checkBox1.Checked); int[] recipeids = sbt.TagIdsToRecipeIds(dbcontext, tagids, !checkBox2.Checked); var hrecipes = dbcontext.Recipe_Table.Where(r => recipeids.Contains(r.RecipeID) && r.DisVisible == false && r.DeleteOrNot == false).Select(r => r); var hrecipes2 = (from r in hrecipes let like = (from r2 in dbcontext.LikeRecipe_Table.AsEnumerable() where r2.RecipeID == r.RecipeID select r2).Count() select new { r.Picture, r.RecipeName, r.Member_Table.Nickname, r.Views, r.RecipeID, like = like }).ToList(); flp_Search.Controls.Clear(); foreach (var item in hrecipes2) { RecipeControl recipe = new RecipeControl(item.RecipeID); recipe.setAll(item.Picture, item.RecipeName, item.Nickname, item.Views, item.like); flp_Search.Controls.Add(recipe); } string stchar = "TagIds:"; foreach (int id in tagids) { stchar += id.ToString() + ","; } } }