コード例 #1
0
ファイル: FakeServer.cs プロジェクト: charset/Tritsch
        private void ProcessMemberQuery(Message message)
        {
            MemberQueryRequest request = SerializerUtil <MemberQueryRequest> .Deserialize(message.Content);

            //Filter
            HashSet <Membership> members = new HashSet <Membership>();
            var linq = members.Where(q => {
                bool name = string.IsNullOrEmpty(request.Name) || q.Name.IndexOf(request.Name) > 0;
                bool nick = string.IsNullOrEmpty(request.NickName) || q.NickName.IndexOf(request.NickName) > 0;
                bool dept = request.Department == null || request.Department.Count == 0;
                bool _ept = true;
                if (!dept)
                {
                    for (int i = 0; i < Math.Min(request.Department.Count, q.Department.Length); i++)
                    {
                        _ept = _ept && request.Department[i].IndexOf(q.Department[i]) >= 0;
                    }
                }
                return(name && nick && (dept || _ept));
            }).ToList();
            Message Reply = MessageFactory.CreateMemberQueryRespMessage(message.To, message.From, linq);

            byte[] b = SerializerUtil <Message> .Serialize(Reply);

            responseMsg.InitPool(b.Length); responseMsg.Put(b, 0, b.Length);
            server.Send(ref responseMsg, false);
        }
コード例 #2
0
        public ContentResult listmember(MemberQueryRequest request)
        {
            var data = _memberService.List(request);
            var res  = new ResultDto <MemberResponse>
            {
                page    = request.PageIndex,
                total   = request.Total,
                records = request.Records,
                rows    = data
            };

            return(Content(res.Serialize()));
        }