示例#1
0
        public async Task <FoodListEntity> GetFoodListByPage(string parameter)
        {
            var    result = new FoodListEntity();
            string url    = StaticURLHelper.FoodList;
            Dictionary <string, string> dic = new Dictionary <string, string>();

            dic.Add("page", parameter);
            var jsonstr = await GetJSON(url, dic);

            result = JsonConvert.DeserializeObject <FoodListEntity>(jsonstr);
            return(result);
        }
示例#2
0
        /// <summary>
        /// 获取食物列表
        /// </summary>
        /// <returns></returns>
        public async Task <ProcessResult> GetFoodShowItem()
        {
            var processresult = new ProcessResult();


            var clearresult = DBHelper.Context.DeleteAll <food_show_item>();

            processresult.Add(ProcessResult.CleanDB, ProcessResultType.成功, clearresult.ToString(), new[] { "food_show_item" });
            int flag = 0;

            for (int i = 1; i < int.MaxValue; i++)
            {
                FoodListEntity data = null;
                try
                {
                    data = await recipeServer.GetFoodListByPage(i.ToString());
                }
                catch (Exception e)
                {
                    processresult.Add("食物列表获取或解析", ProcessResultType.失败, e.Message, new string[] { "当前页" + i });
                    continue;
                }
                if (data != null && data.Status)
                {
                    if (data.Tngou.Count == 0)
                    {
                        processresult.Add("食物列表数据验证", ProcessResultType.成功, "无数据表明已经结束", new string[] { "当前页" + i });
                        if (flag > 5)
                        {
                            break;
                        }
                        flag++;
                        continue;
                    }
                    processresult.Add("食物列表数据验证", ProcessResultType.成功, data.Tngou.Count().ToString(), new string[] { "当前页" + i });
                }
                else
                {
                    processresult.Add("食物列表数据验证", ProcessResultType.失败, "返回数据状态为Flase", new string[] { "当前页" + i });

                    continue;
                }
                var datamodel = data.Tngou.Select(c => new food_show_item()
                {
                    Id          = c.Id,
                    count       = c.Count,
                    description = c.Description,
                    disease     = GetShortStr(c.Disease, 299),
                    fcount      = c.Fcount,
                    food        = c.Food,
                    img         = c.Img,
                    name        = c.Name,
                    rcount      = c.Rcount,
                    summary     = c.Summary,
                }).ToList();
                try
                {
                    var result = DBHelper.Context.Insert(datamodel);
                    processresult.Add("食物数据插入", ProcessResultType.成功, result.ToString(), new string[] { "当前页" + i });
                }
                catch (Exception e)
                {
                    processresult.Add("食物数据插入", ProcessResultType.失败, e.Message, param: new string[] { "当前页" + i });
                    continue;
                }
            }



            return(processresult);
        }