public ActionResult Create(LearningData m)
        {
            if (ModelState.IsValid)
            {

                if (um.Create(m))
                {
                    return Redirect("/Contents/html/parent_reload.htm");
                }
            }

            ViewBag.categories = um.GetCategoryList(m.LDC_Id);

            return View(m);
        }
        public Boolean Edit(LearningData model)
        {
            try
            {
                olsEni.Entry(model).State = EntityState.Modified;
                olsEni.SaveChanges();

                return true;
            }
            catch (Exception ex)
            {
                StaticHelper.RecordSystemLog(ex);
                return false;
            }
        }
        public Boolean Create(LearningData model)
        {
            try
            {

                Int32 id;

                id = GetLDId();

                model.LD_Id = id;
                model.LD_Sort = id;
                olsEni.LearningDatas.Add(model);
                olsEni.SaveChanges();

                return true;
            }
            catch (Exception ex)
            {
                StaticHelper.RecordSystemLog(ex);
                return false;
            }
        }
        public LearningData GetNew()
        {
            LearningData model;

            model = new LearningData()
            {
                LD_Title = "",
                LD_Content = "",
                LD_Remark = "",
                LD_AddTime = DateTime.Now,
                LD_Status = (Byte)Status.Available
            };

            return model;
        }
        public ResponseJson Sort(Int32 originId, Byte sortFlag)
        {
            ResponseJson resJson;

            resJson = new ResponseJson();

            try
            {

                String name;
                Double originSort, destSort;
                LearningData originModel, destModel, adjustModel;
                LearningData[] modelAry;
                List<LearningData> us;

                name = "资料";
                modelAry = new LearningData[2];

                originModel = olsEni.LearningDatas.Single(m => m.LD_Id == originId);
                originSort = originModel.LD_Sort;

                // 置顶
                if (1 == sortFlag)
                {

                    destSort = olsEni.LearningDatas.Min(m => m.LD_Sort);
                    destModel = olsEni.LearningDatas.Single(m => m.LD_Sort == destSort);

                    if (destSort == originSort)
                    {
                        resJson.status = ResponseStatus.Error;
                        resJson.message = "该" + name + "已置顶。";
                        return resJson;
                    }

                    originSort = destSort - 1;
                    originModel.LD_Sort = originSort;
                }
                else if (2 == sortFlag)
                {

                    us = olsEni.LearningDatas
                        .Where(m => m.LD_Sort < originSort)
                        .OrderByDescending(m => m.LD_Sort).Take(2).ToList();

                    if (us.Count == 0)
                    {
                        resJson.status = ResponseStatus.Error;
                        resJson.message = "该" + name + "已处于顶部。";
                        return resJson;
                    }
                    else if (us.Count == 1)
                    {
                        destModel = us[0];
                        originSort = destModel.LD_Sort;
                        destSort = originModel.LD_Sort;
                        originModel.LD_Sort = originSort;
                        destModel.LD_Sort = destSort;
                    }
                    else
                    {
                        destModel = us[1];
                        destSort = destModel.LD_Sort;
                        originSort = Math.Round(destSort + 0.00001, 5, MidpointRounding.AwayFromZero);
                        originModel.LD_Sort = originSort;
                    }

                }
                else// if (3 == sortFlag)
                {

                    us = olsEni.LearningDatas
                        .Where(m => m.LD_Sort > originSort)
                        .OrderBy(m => m.LD_Sort).Take(1).ToList();

                    if (us.Count == 0)
                    {
                        resJson.status = ResponseStatus.Error;
                        resJson.message = "该" + name + "已处于底部。";
                        return resJson;
                    }

                    destModel = us[0];
                    destSort = destModel.LD_Sort;

                    originSort = Math.Round(destSort + 0.00001, 5, MidpointRounding.AwayFromZero);
                    originModel.LD_Sort = originSort;
                }

                adjustModel = olsEni.LearningDatas.SingleOrDefault(m => m.LD_Sort == originSort);
                if (adjustModel != null)
                {
                    adjustModel.LD_Sort = Math.Round(originSort + 0.00001, 5, MidpointRounding.AwayFromZero);
                }

                if (0 == olsEni.SaveChanges())
                {
                    resJson.status = ResponseStatus.Error;
                    resJson.message = ResponseMessage.SaveChangesError;
                    return resJson;
                }

                modelAry[0] = originModel;
                modelAry[1] = destModel;

                resJson.addition = modelAry;
                resJson.status = ResponseStatus.Success;
                return resJson;
            }
            catch (Exception ex)
            {
                resJson.status = ResponseStatus.Error;
                resJson.message = StaticHelper.GetExceptionMessageAndRecord(ex);
                return resJson;
            }
        }