public void get_all_design_ideas(object arg, DoWorkEventArgs e) { e.Result = (object)(new List<design_idea_item>()); try { naturenet_dataclassDataContext db = new naturenet_dataclassDataContext(); var r = from d in db.Design_Ideas orderby d.date descending select d; if (r == null) { e.Result = (object)(new List<design_idea_item>()); return; } List<design_idea_item> ideas = new List<design_idea_item>(); foreach (Design_Idea d in r) { design_idea_item i = new design_idea_item(); ImageSource src = new BitmapImage(new Uri(configurations.GetAbsoluteAvatarPath() + d.avatar)); src.Freeze(); i.img = src; i.design_idea = d; ideas.Add(i); } e.Result = (object)ideas; } catch (Exception ex) { log.WriteErrorLog(ex); } }
public List<design_idea_item> get_all_design_ideas() { try { naturenet_dataclassDataContext db = new naturenet_dataclassDataContext(); var r = from d in db.Design_Ideas orderby d.date descending select d; if (r == null) { return new List<design_idea_item>(); } List<design_idea_item> ideas = new List<design_idea_item>(); foreach (Design_Idea d in r) { DateTime last_time = d.date; var n1 = from f in db.Feedbacks where (f.object_type == "nature_net.Contribution") && (f.object_id == d.id) orderby f.date descending select f; int cnt = 0; int num_like = 0; int num_dislike = 0; int num_comments = 0; if (n1 != null) cnt = n1.Count(); if (cnt != 0) { last_time = n1.First().date; foreach (Feedback f2 in n1) { if (f2.Feedback_Type.name == "Like") if (Convert.ToBoolean(f2.note)) num_like++; else num_dislike++; if (f2.Feedback_Type.name == "Comment") num_comments++; } } design_idea_item i = new design_idea_item(); ImageSource src = new BitmapImage(new Uri(configurations.GetAbsoluteAvatarPath() + d.avatar)); src.Freeze(); i.img = src; i.design_idea = d; i.count = num_comments; i.last_date = last_time; i.num_dislike = num_dislike; i.num_like = num_like; ideas.Add(i); } return ideas; } catch (Exception ex) { log.WriteErrorLog(ex); return new List<design_idea_item>(); } }