예제 #1
0
 public void copy(Appraise appraise)
 {
     isCompleted = appraise.isCompleted;
     star        = appraise.star;
     detail      = appraise.detail;
     time        = appraise.time;
 }
예제 #2
0
파일: CM_Item.cs 프로젝트: cmoski/aclogview
        public static Appraise read(BinaryReader binaryReader)
        {
            Appraise newObj = new Appraise();

            newObj.i_objectID = binaryReader.ReadUInt32();
            return(newObj);
        }
예제 #3
0
        public async Task <ResponseModel> Delete(AppraiseModel model)
        {
            ResponseModel response = new ResponseModel();

            try
            {
                Appraise md = await _context.AppraiseRepository.FirstOrDefaultAsync(m => m.Id == model.Id);

                if (!md.RowVersion.SequenceEqual(model.RowVersion))
                {
                    response.ResponseStatus = Core.CommonModel.Enums.ResponseStatus.OutOfDateData;
                    return(response);
                }

                md.Deleted    = true;
                md.UpdateBy   = base.UserId;
                md.UpdateDate = DateTime.Now;

                _context.AppraiseRepository.Update(md);

                await _context.SaveChangesAsync();
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(response);
        }
예제 #4
0
        public async Task <ResponseModel> Item(int id)
        {
            ResponseModel response = new ResponseModel();

            try
            {
                Appraise md = await _context.AppraiseRepository.FirstOrDefaultAsync(m => m.Id == id);

                if (md == null)
                {
                    throw new NullParameterException();
                }

                AppraiseModel model = new AppraiseModel()
                {
                    Id          = md.Id,
                    Name        = md.Name,
                    Description = md.Description,
                    IsActive    = md.IsActive,
                    RowVersion  = md.RowVersion,
                };

                response.Result = model;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(response);
        }
예제 #5
0
        /// <summary>
        /// 更新用户信息
        /// </summary>
        /// <param name="Appraise"></param>
        /// <returns></returns>
        public int UpdateAppraise(Appraise Appraise)
        {
            string sql  = CreateSqlString.UpdateSqlString(Appraise) + " WHERE AppraiseId =@AppraiseId";
            var    pars = CreateSqlString.SqlServerParameterArray(Appraise);

            return(SqlHelper.ExecuteNonquery(sql, CommandType.Text, pars));
        }
예제 #6
0
        /// <summary>
        /// 添加信息
        /// </summary>
        /// <param name="Appraise"></param>
        /// <returns></returns>
        public int AddAppraise(Appraise Appraise)
        {
            string sql  = CreateSqlString.InsertSqlString(Appraise);
            var    pars = CreateSqlString.SqlServerParameterArray(Appraise);

            return(SqlHelper.ExecuteNonquery(sql, CommandType.Text, pars));
        }
예제 #7
0
        public AppraiseModel GetById(int id)
        {
            Appraise      appraise = appraiseRepository.GetRelevanceBy(id).SingleOrDefault();
            AppraiseModel model    = mapper.Map <AppraiseModel>(appraise);

            return(model);
        }
예제 #8
0
 //商品评价
 public ActionResult shop_pingjia(Appraise app)
 {
     //商品详情的数据展示
     ViewData["pro_xq"] = shop.selpro_detials_id(app.SKUId).ToList();
     ViewBag.nicheng    = shop.UserTable.FirstOrDefault(g => g.UserId == app.UserId).nicheng;
     return(View());
 }
예제 #9
0
        public async Task <IActionResult> PutAppraise(int id, Appraise appraise)
        {
            if (id != appraise.AppraiseId)
            {
                return(BadRequest());
            }

            _context.Entry(appraise).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!AppraiseExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
예제 #10
0
        public async Task <ActionResult <Appraise> > PostAppraise(Appraise appraise)
        {
            _context.Appraise.Add(appraise);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetAppraise", new { id = appraise.AppraiseId }, appraise));
        }
예제 #11
0
 /// <summary>
 ///  初始化实体
 /// </summary>
 /// <param name="Appraise"></param>
 /// <param name="row"></param>
 /// <param name="row"></param>
 private void LoadEntity(Appraise Appraise, DataRow row)
 {
     Appraise.AppraiseId = row["AppraiseId"] != DBNull.Value ? row["AppraiseId"].ToString() : string.Empty;
     Appraise.RateTime   = Convert.ToDateTime(row["RateTime"] != DBNull.Value ? row["RateTime"].ToString() : string.Empty);
     Appraise.UserId     = row["UserId"] != DBNull.Value ? row["UserId"].ToString() : string.Empty;
     Appraise.ProductId  = row["ProductId"] != DBNull.Value ? row["ProductId"].ToString() : string.Empty;
     Appraise.Grade      = Convert.ToInt32(row["Grade"] != DBNull.Value ? row["Grade"].ToString() : string.Empty);
     Appraise.Content    = row["Content"] != DBNull.Value ? row["Content"].ToString() : string.Empty;
 }
예제 #12
0
        public static Appraise read(ByteBuffer data, Order order)
        {
            Appraise appraise = new Appraise();

            appraise.isCompleted = data.ReadByte() == 1;
            appraise.star        = data.ReadByte();
            appraise.detail      = data.ReadString();
            appraise.time        = data.ReadString();
            appraise.order       = order;
            return(appraise);
        }
예제 #13
0
        /// <summary>
        /// 用户李四对文章方法进阶进行点赞和点踩
        /// </summary>
        /// <returns></returns>
        private static Appraise Generate4()
        {
            Appraise appraise = new Appraise();

            appraise.Voter     = UserFactory.LiSi;
            appraise.Article   = ArticleFactory.method;
            appraise.UpCount   = 1;
            appraise.DownCount = 1;
            new AppraiseRepository(Helper.GetDbContext()).Save(appraise);
            return(appraise);
        }
예제 #14
0
        /// <summary>
        /// 用户张三对文章C#进阶进行点赞和点踩
        /// </summary>
        /// <returns></returns>
        private static Appraise Generate3()
        {
            Appraise appraise = new Appraise();

            appraise.Voter     = UserFactory.ZhangSan;
            appraise.Article   = ArticleFactory.jinJie;
            appraise.UpCount   = 1;
            appraise.DownCount = 1;
            new AppraiseRepository(Helper.GetDbContext()).Save(appraise);
            return(appraise);
        }
예제 #15
0
        /// <summary>
        /// 用户小伟对文章表达式进行点赞和点踩
        /// </summary>
        /// <returns></returns>
        private static Appraise Generate2()
        {
            Appraise appraise = new Appraise();

            appraise.Voter     = UserFactory.XiaoWei;
            appraise.Article   = ArticleFactory.express;
            appraise.UpCount   = 1;
            appraise.DownCount = 1;
            new AppraiseRepository(Helper.GetDbContext()).Save(appraise);
            return(appraise);
        }
예제 #16
0
        /// <summary>
        /// 用户王五对文章控制台项目进行点赞和点踩
        /// </summary>
        /// <returns></returns>
        private static Appraise Generate5()
        {
            Appraise appraise = new Appraise();

            appraise.Voter     = UserFactory.WangWu;
            appraise.Article   = ArticleFactory.consoleProgram;
            appraise.UpCount   = 1;
            appraise.DownCount = 1;
            new AppraiseRepository(Helper.GetDbContext()).Save(appraise);
            return(appraise);
        }
예제 #17
0
        /// <summary>
        /// 用户王五对文章分支进行点赞和点踩
        /// </summary>
        /// <returns></returns>
        private static Appraise Generate1()
        {
            Appraise appraise = new Appraise();

            appraise.Voter     = UserFactory.WangWu;
            appraise.Article   = ArticleFactory.branch;
            appraise.UpCount   = 1;
            appraise.DownCount = 1;
            appraise.Comment   = CommentFactory.branch;
            new AppraiseRepository(Helper.GetDbContext()).Save(appraise);
            return(appraise);
        }
예제 #18
0
 internal static void Create()
 {
     aArray          = Generate();
     aBranch         = Generate1();
     aParameter      = Generate10();
     aExpress        = Generate2();
     aJinjie         = Generate3();
     aMethodJinjie   = Generate4();
     aConsoleProgram = Generate5();
     aBianLiang      = Generate6();
     aXunHuan        = Generate7();
     aYuanZu         = Generate8();
     aMethodDefine   = Generate9();
 }
예제 #19
0
        /// <summary>
        /// 评论的点赞和点踩
        /// </summary>
        /// <param name="id"></param>
        /// <param name="direction"></param>
        /// <returns></returns>
        public int SaveComment(int id, string direction)
        {
            Appraise appraise = new Appraise();

            appraise.Voter   = GetCurrentUser();
            appraise.Comment = commentRepository.Find(id);
            if (direction == "1")
            {
                appraise.SupportCount += 1;
            }
            else
            {
                appraise.OpposeCount += 1;
            }
            return(appraiseRepository.Save(appraise));
        }
예제 #20
0
    public override bool acceptMessageData(BinaryReader messageDataReader, TreeView outputTreeView)
    {
        bool handled = true;

        PacketOpcode opcode = Util.readOpcode(messageDataReader);

        switch (opcode)
        {
        case PacketOpcode.Evt_Item__Appraise_ID: {
            Appraise message = Appraise.read(messageDataReader);
            message.contributeToTreeView(outputTreeView);
            break;
        }

        case PacketOpcode.Evt_Item__UseDone_ID: {
            UseDone message = UseDone.read(messageDataReader);
            message.contributeToTreeView(outputTreeView);
            break;
        }

        case PacketOpcode.Evt_Item__AppraiseDone_ID:
        {
            AppraiseDone message = AppraiseDone.read(messageDataReader);
            message.contributeToTreeView(outputTreeView);
            break;
        }

        case PacketOpcode.Evt_Item__QueryItemMana_ID: {
            QueryItemMana message = QueryItemMana.read(messageDataReader);
            message.contributeToTreeView(outputTreeView);
            break;
        }

        case PacketOpcode.Evt_Item__QueryItemManaResponse_ID: {
            QueryItemManaResponse message = QueryItemManaResponse.read(messageDataReader);
            message.contributeToTreeView(outputTreeView);
            break;
        }

        default: {
            handled = false;
            break;
        }
        }

        return(handled);
    }
예제 #21
0
        /// <summary>
        /// 文章的点赞和点踩
        /// </summary>
        /// <param name="id"></param>
        /// <param name="direction"></param>
        /// <returns></returns>
        public int SaveArticle(int id, string direction)
        {
            Appraise appraise = new Appraise();

            appraise.Voter   = GetCurrentUser();
            appraise.Article = articleRepository.Find(id);
            if (direction == "1")
            {
                appraise.UpCount += 1;
            }
            else
            {
                appraise.DownCount += 1;
            }

            return(appraiseRepository.Save(appraise));
        }
예제 #22
0
        //商品评价数据处理
        public ActionResult shop_pingjiainfo(Appraise app)
        {
            Appraise a = new Appraise();

            a.content  = app.content;
            a.Grade    = app.Grade;
            a.Ratetime = app.Ratetime;
            a.SKUId    = app.SKUId;
            a.UserId   = app.UserId;
            shop.Appraise.Add(a);
            if (shop.SaveChanges() > 0)
            {
                return(Content("true"));
            }
            else
            {
                return(Content("false"));
            }
        }
예제 #23
0
        /// <summary>
        /// 获取一条用户信息 By ID
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public Appraise GetDeail(int id)
        {
            string sql = CreateSqlString.SelectSqlString(new Appraise {
            }) + " WHERE AppraiseId =@AppraiseId ";

            SqlParameter[] pars =
            {
                new SqlParameter("@AppraiseId", SqlDbType.Int)
            };
            pars[0].Value = id;
            DataTable dt       = SqlHelper.GetDataTable(sql, CommandType.Text, pars);
            Appraise  instance = null;

            if (dt.Rows.Count > 0)
            {
                instance = new Appraise();
                LoadEntity(instance, dt.Rows[0]);
            }
            return(instance);
        }
예제 #24
0
        /// <summary>
        /// 分页获取列表
        /// </summary>
        /// <returns></returns>
        public List <Appraise> GetList(int page, int index)
        {
            string sql           = CreateSqlString.SelectSqlString(new Appraise {
            });                                                             //}limit  {((page - 1) * index)}, {index}";
            DataTable       da   = SqlHelper.GetDataTable(sql, CommandType.Text);
            List <Appraise> list = new List <Appraise> {
            };

            if (da.Rows.Count > 0)
            {
                list = new List <Appraise>();
                Appraise Appraise = null;
                foreach (DataRow row in da.Rows)
                {
                    Appraise = new Appraise();
                    LoadEntity(Appraise, row);
                    list.Add(Appraise);
                }
            }
            return(list);
        }
예제 #25
0
        /// <summary>
        /// 添加
        /// </summary>
        /// <param name="context"></param>
        public void AddAppraiseRequest(HttpContext context)
        {
            var response = new ResponseMessage <string>();

            try
            {
                string grade     = context.Request.Form["Grade"];
                string userId    = context.Request.Form["UserId"];
                string productId = context.Request.Form["ProductId"];
                string content   = context.Request.Form["Content"];

                Appraise appraise = new Appraise
                {
                    AppraiseId = Guid.NewGuid().ToString(),
                    Grade      = Convert.ToInt32(grade),
                    ProductId  = productId,
                    RateTime   = DateTime.Now,
                    UserId     = userId,
                    Content    = content
                };
                var add = _userInfoService.Add(appraise);

                if (add)
                {
                    response.code = 0;
                    response.msg  = "添加成功";
                    context.Response.Write(SerializeHelp.ToJson(response));
                    return;
                }
                response.code = 500;
                response.msg  = "添加失败";
                context.Response.Write(SerializeHelp.ToJson(response));
            }
            catch (Exception e)
            {
                response.code = 500;
                response.msg  = "失败,请重试";
                context.Response.Write(SerializeHelp.ToJson(response));
            }
        }
예제 #26
0
        public static Order read(ByteBuffer data)
        {
            Order order = new Order();

            order.id        = data.ReadLong();
            order.dealId    = data.ReadLong();
            order.buyId     = data.ReadLong();
            order.buyerName = data.ReadString();
            order.num       = data.ReadInt();
            order.price     = float.Parse(data.ReadString());
            order.state     = data.ReadByte();
            order.helpflag  = data.ReadByte() == 1;
            for (byte i = 0; i <= order.state; i++)
            {
                string time = data.ReadString();
                order.times.Add(time);
            }
            order.sellerAppraise = Appraise.read(data, order);
            order.buyerAppraise  = Appraise.read(data, order);
            order.revoke         = data.ReadInt();
            return(order);
        }
예제 #27
0
        /// <summary>
        /// 修改用户
        /// </summary>
        /// <param name="context"></param>
        public void UpdateAppraiseRequest(HttpContext context)
        {
            var response = new ResponseMessage();

            try
            {
                string   grade      = context.Request.Form["Grade"];
                string   userId     = context.Request.Form["UserId"];
                string   productId  = context.Request.Form["ProductId"];
                string   appraiseId = context.Request.Form["AppraiseId"];
                Appraise appraise   = new Appraise
                {
                    AppraiseId = appraiseId,
                    Grade      = Convert.ToInt32(grade),
                    ProductId  = productId,
                    RateTime   = DateTime.Now,
                    UserId     = userId,
                };
                var edi = _userInfoService.Update(appraise);
                if (edi)
                {
                    response.code = 0;
                    response.msg  = "修改成功";
                    context.Response.Write(SerializeHelp.ToJson(response));
                    return;
                }
                response.code = 500;
                response.msg  = "修改失败";
                context.Response.Write(SerializeHelp.ToJson(response));
            }
            catch (Exception e)
            {
                response.code = 500;
                response.msg  = "失败,请重试";
                context.Response.Write(SerializeHelp.ToJson(response));
            }
        }
예제 #28
0
        public override JSONObject Serialize()
        {
            JSONObject obj = new JSONObject();

            obj.Add(cAppraise, Appraise.Serialize());
            obj.Add(cBalance, Balance.Serialize());
            obj.Add(cBluff, Bluff.Serialize());
            obj.Add(cClimb, Climb.Serialize());
            obj.Add(cConcentration, Concentration.Serialize());
            obj.Add(cDecipherScript, DecipherScript.Serialize());
            obj.Add(cDiplomacy, Diplomacy.Serialize());
            obj.Add(cDisableDevice, DisableDevice.Serialize());
            obj.Add(cDisguise, Disguise.Serialize());
            obj.Add(cEscapeArtist, EscapeArtist.Serialize());
            obj.Add(cForgery, Forgery.Serialize());
            obj.Add(cGatherInformation, GatherInformation.Serialize());
            obj.Add(cHandleAnimal, HandleAnimal.Serialize());
            obj.Add(cHeal, Heal.Serialize());
            obj.Add(cHide, Hide.Serialize());
            obj.Add(cIntimidate, Intimidate.Serialize());
            obj.Add(cJump, Jump.Serialize());
            obj.Add(cListen, Listen.Serialize());
            obj.Add(cMoveSilently, MoveSilently.Serialize());
            obj.Add(cOpenLock, OpenLock.Serialize());
            obj.Add(cRide, Ride.Serialize());
            obj.Add(cSearch, Search.Serialize());
            obj.Add(cSenseMotive, SenseMotive.Serialize());
            obj.Add(cSleightOfHand, SleightOfHand.Serialize());
            obj.Add(cSpellCraft, SpellCraft.Serialize());
            obj.Add(cSpot, Spot.Serialize());
            obj.Add(cSurvival, Survival.Serialize());
            obj.Add(cSwim, Swim.Serialize());
            obj.Add(cTumble, Tumble.Serialize());
            obj.Add(cUseMagicDevice, UseMagicDevice.Serialize());
            obj.Add(cUseRope, UseRope.Serialize());
            return(obj);
        }
예제 #29
0
        public async Task <ResponseModel> Insert(AppraiseModel model)
        {
            ResponseModel response = new ResponseModel();

            try
            {
                Appraise md = new Appraise();

                md.Name        = model.Name;
                md.Description = model.Description;
                md.IsActive    = model.IsActive;
                md.CreateBy    = base.UserId;
                md.CreateDate  = DateTime.Now;

                await _context.AppraiseRepository.AddAsync(md).ConfigureAwait(true);

                await _context.SaveChangesAsync();
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(response);
        }
예제 #30
0
파일: Program.cs 프로젝트: Edwin521/17bang
        static void Main(string[] args)
        {
            User    user = new User();
            Article art  = new Article();

            art.Publish();

            Console.WriteLine(DateTime.Now.ToString());


            DLinkNode dLinkNode1 = new DLinkNode();
            DLinkNode dLinkNode2 = new DLinkNode();
            DLinkNode dLinkNode3 = new DLinkNode();
            DLinkNode dLinkNode4 = new DLinkNode();

            dLinkNode1.AddAfter(dLinkNode2);
            dLinkNode2.AddAfter(dLinkNode3);
            dLinkNode3.AddAfter(dLinkNode4);

            foreach (DLinkNode item in dLinkNode1)
            {
                Console.WriteLine(item);
            }


            //方法给委托赋值
            ProvideWater provideWater = new ProvideWater(AssignToDlg);

            //匿名方法给委托赋值
            ProvideWater provideWater2 = delegate(Person person)
            {
                return(person.weight--);
            };
            // lambda表达式给委托赋值
            ProvideWater provideWater3 = p => p.weight--;

            Console.WriteLine(GetWater(provideWater3));

            ///////////////////////////////////////////////////////////////////////
            ///构建文章,评论,评价,关键字的关系。
            User lzb = new User {
                Name = "李智博", Password = "******"
            };
            User xy = new User {
                Name = "小鱼", Password = "******"
            };
            User fg = new User {
                Name = "飞哥", Password = "******"
            };
            IList <User> users = new List <User> {
                lzb, xy, fg
            };



            Comment comment1 = new Comment {
                main = "你写的真不错"
            };
            Comment comment2 = new Comment {
                main = "你的文笔真不错"
            };
            Comment comment3 = new Comment {
                main = "写的不是很好,不符合我的价值观"
            };
            Comment comment4 = new Comment {
                main = "写的不错,给你100分"
            };
            Comment comment5 = new Comment {
                main = "你是我见过写的最差的"
            };
            Comment comment6 = new Comment {
                main = "写的不是很符合我的逻辑,感觉很凌乱,继续加油哦"
            };
            IList <Comment> Comments = new List <Comment> {
                comment1, comment2, comment3, comment4, comment5, comment6
            };

            Keyword <Article> java = new Keyword <Article> {
                Word = "java的应用"
            };
            Keyword <Article> c = new Keyword <Article> {
                Word = "c应用"
            };
            Keyword <Article> css = new Keyword <Article> {
                Word = "css的应用"
            };
            Keyword <Article> jquery = new Keyword <Article> {
                Word = "jquery的应用"
            };
            Keyword <Article> it = new Keyword <Article> {
                Word = "编程语言"
            };
            Keyword <Article> csharp = new Keyword <Article> {
                Word = "编程语言之csharp"
            };
            Keyword <Article> net = new Keyword <Article> {
                Word = "编程世界之-.net"
            };
            IList <Keyword <Article> > keywords = new List <Keyword <Article> > {
                java, c, css, jquery, it
            };

            Article Article1 = new Article()
            {
                Title       = "it学习入门",
                Main        = "it入门需要做些什么准备呢,咱们。。。",
                Author      = fg,
                PublishTime = new DateTime(2020, 10, 1),
                keywords    = new List <Keyword <Article> > {
                    it, csharp
                },
                Comment = new List <Comment> {
                    comment3
                }
            };



            Article Article2 = new Article
            {
                Title       = "高效的学习效率",
                Main        = "怎样提高我们的学习效率呢。。。",
                Author      = fg,
                PublishTime = new DateTime(2019, 10, 1),
                keywords    = new List <Keyword <Article> >()
                {
                    it, java, c
                },
                Comment = new List <Comment> {
                    comment4
                }
            };
            Article Article3 = new Article
            {
                Title       = "怎样选择编程语言",
                Main        = "编程语言需要结合。。。。",
                Author      = fg,
                PublishTime = new DateTime(2019, 6, 1),
                keywords    = new List <Keyword <Article> >()
                {
                    it, css
                },
                Comment = new List <Comment>()
                {
                    comment5
                }
            };
            Article article4 = new Article
            {
                Title    = "编程语言的魅力",
                Author   = xy,
                keywords = new List <Keyword <Article> >()
                {
                    it, css, jquery
                },
                Comment = new List <Comment>()
                {
                    comment1, comment2
                },
                PublishTime = new DateTime(2020, 11, 1)
            };
            List <Article> Articles = new List <Article> {
                Article1, Article2, Article3, article4
            };

            Problem problem1 = new Problem
            {
                Author      = lzb,
                Reward      = 13,
                PublishTime = new DateTime(2020, 1, 20),
                Main        = "求助大佬关于c#委托方面的知识",
                Title       = "c#方面的求助",
                comments    = new List <Comment> {
                    comment6
                },
            };

            IList <Problem> problems = new List <Problem> {
                problem1
            };


            //文章文章添加评价
            Appraise appraise1 = new Appraise {
                Voter = lzb
            };

            appraise1.Agree();
            Article1.appraises.Add(appraise1);

            Appraise appraise2 = new Appraise {
                Voter = xy
            };

            appraise2.Disagree();
            Article1.appraises.Add(appraise2);
            //一个关键字也可以对应多个文章
            it.Articles = new List <Article> {
                Article1, Article2, Article3
            };
            //文章可以有多个评论
            Article1.Comment = new List <Comment> {
                comment1, comment2
            };
            //每个评论必须有一个对应的文章
            comment3.Article = Article1;


            ////每篇文章都对应着它的作者

            Article1.Author = fg;
            Article2.Author = fg;
            Article3.Author = fg;
            article4.Author = xy;


            //ContentService kk = new ContentService();
            //Article news = new Article();
            //kk.Publish(news);
            //Console.WriteLine(news.PublishTime);

            //在之前“文章 / 评价 / 评论 / 用户 / 关键字”对象模型的基础上,添加相应的数据,然后完成以下操作:

            //用linq方法改写以前的表达式

            //找出“飞哥”发布的文章
            var Find_dfg = Articles.Where(a => a.Author == fg);
            //找出2019年1月1日以后“小鱼”发布的文章
            var Find_xy = Articles.Where(a => a.Author == xy && a.PublishTime > new DateTime(2019, 1, 1));
            //按发布时间升序 / 降序排列显示文章
            var Ascd = Articles.OrderBy(a => a.PublishTime);
            var Desc = Articles.OrderByDescending(a => a.PublishTime);


            //统计每个用户各发布了多少篇文章
            var Fg_article = Articles.Where(a => a.Author == fg).GroupBy(a => a.Author);
            var Xy_article = Articles.Where(a => a.Author == xy).GroupBy(a => a.Author);
            //找出包含关键字“C#”或“NET”的文章
            var Csharp_kw = Articles.Where(a => a.keywords.Any(k => k.Word == "c#"));
            var Net_kw    = Articles.Where(a => a.keywords.Any(k => k.Word == ".NET"));

            //找出评论数量最多的文章
            var Article_Comment_Max = Articles.OrderByDescending(a => a.Comment.Count()).First();

            //找出每个作者评论数最多的文章
            var Fg_Comment_Max = Articles.Where(a => a.Author == fg).OrderByDescending(a => a.Comment.Count()).First();
            var Xy_Comment_Max = Articles.Where(a => a.Author == xy).OrderByDescending(a => a.Comment.Count()).First();

            //找出每个作者最近发布的文章
            var Fg_Article_Rec = Articles.Where(a => a.Author == fg).OrderByDescending(a => a.PublishTime).First();
            var Xy_Article_Rce = Articles.Where(a => a.Author == xy).OrderByDescending(a => a.PublishTime).First();


            //找出每一篇求助的悬赏都大于5个帮帮币的求助作者
            var resualt = problems.Where(p => p.Reward > 5).GroupBy(p => p.Author);


            //Console.WriteLine(HomeWork<int>.BinarySeek(new System.Collections.Generic.List<int> { 1, 5, 76, 8, 9, 0, 43, 6, 3, 5 }, 0));

            ///字符串
            //Console.WriteLine(mimicJoin("-", new string[] {"众所周知", "飞哥", "的", "颜值","是","一百分" }));
            //Console.WriteLine(GetCount("13212*212-212", "212"));
            //Console.WriteLine(GetCount("111234512", "12"));
            //封装一个方法,可以修改Content的CreateTime和PublishTime
            //DateTime lw = new DateTime(2023, 3, 4);

            //Content article = new Content("文章");
            //article.GetType()
            //    .GetProperty("CreateTime", BindingFlags.NonPublic | BindingFlags.Instance).SetValue(article, lw);
            //Console.WriteLine();



            //Console.WriteLine(Program.findPrimeNum(1, 10));

            //TokenManager tokenManager = new TokenManager();
            //User user = new User("lls", "1234");
            //Console.WriteLine(user.ToString());

            //Console.WriteLine(user);

            //Article js = new Article
            //{
            //    title = "title1",
            //    Author = new User("lzb", "333")
            //};

            //User lls = new User("lls", "123");
            //js.AgreedBy(lls);

            //new Article().AgreedBy(new User("lls", "1234"));


            //ISendMessage lzb = new User("lzb","123");///调用显示接口
            //User lls = new User("lls", "333");

            //lzb.Send(lls);

            //Console.WriteLine(time.GetDate(new DateTime(2020,2,27), 3));
            //Console.WriteLine(time.GetDate(new DateTime(2020,2,27), 1));
            //Console.WriteLine(time.GetDate(new DateTime(2020,12,30), 1));
            //Console.WriteLine(time.GetDate(new DateTime(2020,1,1), 1));

            //Console.WriteLine(time.GetDateofmondy(2021));
            //Console.WriteLine(time.GetDateofmondy(2022));
            //Console.WriteLine(time.GetDateofmondy(2023));
            //Console.WriteLine(time.GetDateofmondy(2024));


            //time.GetWeeks(new DateTime(2020, 1, 6));


            //TokenManager lzb = new TokenManager();
            //lzb._token = lzb._token | Token.Admin;///存入权限身份
            //lzb._token = lzb._token ^ Token.Blogger;//剥夺权限身份


            //Console.WriteLine((lzb._token & Token.Newbie) == Token.Newbie);//查看是否存在这个权限



            //用代码证明struct定义的类型是值类型
            //bed dream = new bed();
            //dream = null;///值类型不能赋值为null
            //User lzb = new User("lzb","123");
            //lzb = null;///同样的由class定义的引用类型就可以赋值为null

            //Suggest lzb = new Suggest();
            //Console.WriteLine(lzb._kind);
            //Article lz = new Article();
            //Console.WriteLine(lz._kind);


            // FactoryContext lzb = new FactoryContext();
            //FactoryContext a = FactoryContext.foo();
            //FactoryContext b = FactoryContext.foo();
            //MimicStack.MimicStack.Push(123);
            //MimicStack.MimicStack.Push(124);
            //MimicStack.MimicStack.Push(123);

            /* FactoryContext a = new FactoryContext();*////构造函数设为私有后,新new的时候就会报错


            //problem lzb = new problem();
            //lzb[1] = "123";
            //lzb[2] = "456";
            //lzb[3] = "789";
            //lzb[0] = "22";
            //Console.WriteLine(lzb[2]);

            //problem lzb = new problem("lzb");

            //problem lw = new problem("");

            //User zdh = new User("空", "ki");
            //Console.WriteLine(zdh.Name);

            //Console.WriteLine(zdh.Password);

            ///调用函数
            ///
            //string output;
            //LZBC.user.Register("1234", "2345", "3456",  "4567", "6789",out output);
            //if (LZBC.user.Register("1234", "2345", "3456", "4567", "6789", out output))
            //{
            //    Console.WriteLine(output);
            //}
            //else
            //{
            //    Console.WriteLine(output);
            //}



            //            string num;
            //            if (logOn("12", "13", "14", out num)
            //)
            //            {
            //                Console.WriteLine(num);
            //            }
            //            else
            //            {
            //                Console.WriteLine(num);

            //            }


            //Console.WriteLine(BinarySeek(new int[] { 1, 3, 5, 6, 8, 12, 24 }, 0, 7, 12));
            //Console.WriteLine(BinarySeek2(new int[] { 1, 3, 5, 6, 8, 12, 24, 34,75 },75 ));
            //GetArray(12, 12, 12);
            //GuessMe();
            //Console.WriteLine(GetAverage(new double[] { 23.45, 12.3, 34.5 }));
            //findPrimeNum(10,30);//找质数
            /// Console.WriteLine(getMax(new double[] { 23.1, 44, 32, 13 }));
            //getMax(new double[] { 23.1, 44, 32, 13 });
            //twoDimensional();//数组下标
            //GetAverage(1200, 43);//平均成绩
            //Console.WriteLine(GetAverage(1200, 43));

            // Console.WriteLine(logOn("123", "234", "345"));//登录
            //GuessMe(12);//猜数字

            ///  //getSum(1, 2);
            //Console.WriteLine(getSum(1, 2));
            //getProduct(2, 3);
            //Console.WriteLine(getProduct(2, 3));
            //differencing(23, 21);
            //Console.WriteLine(differencing(23, 21));
            //QUOTIENT(4, 3);
            //Console.WriteLine(QUOTIENT(6,2.4));
        }