Beispiel #1
0
        /// <summary>
        /// 删除系统栏目
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        public DelResponse Del(DelReqeust request)
        {
            var response = new DelResponse();

            try
            {
                var entity = _systemNavbarRepository.Find <SystemNavbarPo>(e => e.IsValid == 1 && e.Id == request.Id);

                if (entity == null)
                {
                    throw new Exception("删除系统栏目不存在");
                }

                EntityLogger.UpdateEntity(entity);

                entity.IsValid = 0;

                _systemNavbarRepository.UpdateColumns <SystemNavbarPo>(entity, (e) => new { e.IsValid, e.UpdateTime, e.UpdateUserId });
            }
            catch (Exception ex)
            {
                response.IsSuccess   = false;
                response.MessageCode = "-1";
                response.MessageText = ex.ToString();
                LogManager.LogicLogger.ErrorFormat("删除系统栏目出错:{0}", new { request, err = ex.ToString() }.ToJson());
            }
            return(response);
        }
Beispiel #2
0
        /// <summary>
        /// Creates a DelResponse packet.
        /// </summary>
        /// <param name="context">The user context which contains message ID.</param>
        /// <param name="resultCode">Result code of previous request, as specified in RFC 2251.</param>
        /// <param name="matchedDn">Matched DN.</param>
        /// <param name="errorMessage">Error message for result code. Required.</param>
        /// <param name="referral">Referral. Optional. Used for LDAP v3 only.</param>
        /// <returns>The packet that contains the response.</returns>
        internal override AdtsDelResponsePacket CreateDelResponse(
            AdtsLdapContext context,
            MsLdap.ResultCode resultCode,
            string matchedDn,
            string errorMessage,
            string[] referral)
        {
            DelResponse delResponse = new DelResponse(
                new LDAPResult_resultCode((long)resultCode),
                new LDAPDN(matchedDn ?? string.Empty),
                new LDAPString(errorMessage ?? string.Empty),
                CreateReferral(referral));

            LDAPMessage_protocolOp operation = new LDAPMessage_protocolOp();

            operation.SetData(LDAPMessage_protocolOp.delResponse, delResponse);

            LDAPMessage           message = new LDAPMessage(new MessageID(context.MessageId), operation, null);
            AdtsDelResponsePacket packet  = new AdtsDelResponsePacket();

            packet.ldapMessagev3 = message;
            packet.messageId     = context.MessageId;

            return(packet);
        }
Beispiel #3
0
        private static LdapPacket BuildError(LdapPacket request, LdapException ex)
        {
            BaseOperationDone operation = null;

            switch (request.ProtocolOperation.Tag.LdapCommand)
            {
            case LdapCommands.AddRequest:
                operation = new AddResponse();
                break;

            case LdapCommands.BindRequest:
                operation = new BindResponse();
                break;

            case LdapCommands.DelRequest:
                operation = new DelResponse();
                break;

            case LdapCommands.SearchRequest:
                operation = new SearchResultDone();
                break;

            case LdapCommands.ModifyRequest:
                operation = new ModifyResponse();
                break;
            }

            operation.Result = new LDAPResult
            {
                MatchedDN         = new DEROctetString(ex.Target),
                DiagnosticMessage = new DEROctetString(ex.Message),
                ResultCode        = new DEREnumerated <LDAPResultCodes>
                {
                    Value = ex.Code
                }
            };
            var ldapPacket = new LdapPacket
            {
                MessageId         = request.MessageId,
                ProtocolOperation = new DERProtocolOperation
                {
                    Operation = operation
                }
            };

            return(ldapPacket);
        }