public static string Bulid(HttpContext context) { bool value = false; string message = "Fail!"; XElement result = new XElement("Result"); try { using (ProduceBussiness db = new ProduceBussiness()) { QuestInfo[] quests = db.GetALlQuest(); QuestAwardInfo[] questgoods = db.GetAllQuestGoods(); QuestConditionInfo[] questcondiction = db.GetAllQuestCondiction(); QuestRateInfo[] questrate = db.GetAllQuestRate(); foreach (QuestInfo quest in quests) { //添加任务模板 XElement temp_xml = FlashUtils.CreateQuestInfo(quest); //添加任何条件 IEnumerable temp_questcondiction = questcondiction.Where(s => s.QuestID == quest.ID); foreach (QuestConditionInfo item1 in temp_questcondiction) { temp_xml.Add(FlashUtils.CreateQuestCondiction(item1)); } //添加任务奖励 IEnumerable temp_questgoods = questgoods.Where(s => s.QuestID == quest.ID); foreach (QuestAwardInfo item2 in temp_questgoods) { temp_xml.Add(FlashUtils.CreateQuestGoods(item2)); } //<Rate BindMoneyRate="1|1|1|1" ExpRate="1.5|2|2.5|3" GoldRate="1.5|2|2.5|3" ExploitRate="1.5|2|2.5|3" CanOneKeyFinishTime="3" /> result.Add(temp_xml); } foreach (QuestRateInfo quest in questrate) { XElement temp_xml1 = FlashUtils.CreateQuestRate(quest); result.Add(temp_xml1); } value = true; message = "Success!"; } } catch (Exception ex) { log.Error("QuestList", ex); } result.Add(new XAttribute("value", value)); result.Add(new XAttribute("message", message)); //return result.ToString(false); return(csFunction.CreateCompressXml(context, result, "QuestList", true)); }
/// <summary> /// 得到所有任务的条件 /// </summary> /// <param name="quests">任务</param> /// <returns>返回任务对应的条件</returns> public static Dictionary <int, List <QuestConditionInfo> > LoadQuestCondictionDb(Dictionary <int, QuestInfo> quests) { Dictionary <int, List <QuestConditionInfo> > list = new Dictionary <int, List <QuestConditionInfo> >(); using (ProduceBussiness db = new ProduceBussiness()) { QuestConditionInfo[] infos = db.GetAllQuestCondiction(); foreach (QuestInfo quest in quests.Values) { IEnumerable <QuestConditionInfo> temp = infos.Where(s => s.QuestID == quest.ID); list.Add(quest.ID, temp.ToList()); } } return(list); }
public static Dictionary <int, List <QuestConditionInfo> > LoadQuestCondictionDb(Dictionary <int, QuestInfo> quests) { Dictionary <int, List <QuestConditionInfo> > dictionary = new Dictionary <int, List <QuestConditionInfo> >(); using (ProduceBussiness produceBussiness = new ProduceBussiness()) { QuestConditionInfo[] allQuestCondiction = produceBussiness.GetAllQuestCondiction(); foreach (QuestInfo questInfo in quests.Values) { QuestInfo quest = questInfo; IEnumerable <QuestConditionInfo> source = Enumerable.Where <QuestConditionInfo>((IEnumerable <QuestConditionInfo>)allQuestCondiction, (Func <QuestConditionInfo, bool>)(s => s.QuestID == quest.ID)); dictionary.Add(quest.ID, Enumerable.ToList <QuestConditionInfo>(source)); } } return(dictionary); }
public static Dictionary <int, List <QuestConditionInfo> > LoadQuestCondictionDb(Dictionary <int, QuestInfo> quests) { Dictionary <int, List <QuestConditionInfo> > dictionary = new Dictionary <int, List <QuestConditionInfo> >(); using (ProduceBussiness produceBussiness = new ProduceBussiness()) { QuestConditionInfo[] allQuestCondiction = produceBussiness.GetAllQuestCondiction(); foreach (QuestInfo quest in quests.Values) { IEnumerable <QuestConditionInfo> source = from s in allQuestCondiction where s.QuestID == quest.ID select s; dictionary.Add(quest.ID, source.ToList <QuestConditionInfo>()); } } return(dictionary); }
/// <summary> /// 得到所有任务的条件 /// </summary> /// <param name="quests">任务</param> /// <returns>返回任务对应的条件</returns> public static Dictionary<int, List<QuestConditionInfo>> LoadQuestCondictionDb(Dictionary<int,QuestInfo> quests) { Dictionary<int, List<QuestConditionInfo>> list = new Dictionary<int, List<QuestConditionInfo>>(); using (ProduceBussiness db = new ProduceBussiness()) { QuestConditionInfo[] infos = db.GetAllQuestCondiction(); foreach (QuestInfo quest in quests.Values) { IEnumerable<QuestConditionInfo> temp = infos.Where(s => s.QuestID == quest.ID); list.Add(quest.ID, temp.ToList()); } } return list; }