private string GetAttendeeList(string eventid) { string resultstr = ""; KumichoModel dbmodel = new KumichoModel(); try { //EventIDに合致するイベントを読み込み var currentevent = dbmodel.KumichoActivities .Where(c => c.EventID == eventid); //EventIDに合致する参加者一覧を取得 var attend = dbmodel.ActivityAttendees .Where(d => d.EventID == eventid && d.IsCanceled == false); if (currentevent.Count() == 0) { return(""); } else { //Tableから読み込まれた情報を基にエンティティを作成 var eventinfo = currentevent.First(); List <Attendees> attendees = new List <Attendees>(); if (attend.Count() != 0) { //参加者リストを作成 foreach (var attendee in attend) { attendees.Add(new Attendees { TwitterID = attendee.TwitterID, FamilyName = attendee.FamilyName, FirstName = attendee.FirstName, IsCanceled = attendee.IsCanceled, IsAttended = attendee.IsAttended }); } } //イベント情報を作成 Activity currentactivity = new Activity { Id = eventinfo.Id, EventID = eventinfo.EventID, Title = eventinfo.Title, Schedule = eventinfo.Schedule, Attendees = attendees, IsCanceled = eventinfo.IsCanceled }; //Jsonシリアライズし文字列化 resultstr = JsonConvert.SerializeObject(currentactivity); } } catch { } return(resultstr); }
private string CreateMessage(string id, string stat) { string messagetext; string notifytext = "イベントに関する情報があります。"; //イベント情報をDBより取得 KumichoModel dbmodel = new KumichoModel(); var result = dbmodel.KumichoActivities.Where(c => c.EventID == id); if (result.Count() == 0) { messagetext = "イベントが確定またはキャンセルになりました。"; } else { var eventinfo = result.First(); if (stat == "cancel") { notifytext = string.Format("イベント【{0}】は中止になりました。ご注意ください。", eventinfo.Title);; messagetext = notifytext; eventinfo.IsCanceled = true; dbmodel.SaveChanges(); } else { notifytext = string.Format("イベント【{0}】は予定通り開催します。", eventinfo.Title); messagetext = notifytext + "参加者の方宛には通知をお送りしました。"; eventinfo.IsComitted = true; dbmodel.SaveChanges(); } } SendNotify(id, notifytext); return(messagetext); }