Ejemplo n.º 1
0
        public override void BuildSql(AbstractRequestContext context)
        {
            var matchedTag = ChildTags.FirstOrDefault(tag =>
            {
                if (tag is Case caseTag)
                {
                    return(caseTag.IsCondition(context));
                }
                return(false);
            }) ?? ChildTags.FirstOrDefault(tag => tag is Default);

            matchedTag?.BuildSql(context);
        }
Ejemplo n.º 2
0
        private ITag GetMatchedTag(AbstractRequestContext context)
        {
            var matchedTag = ChildTags.FirstOrDefault(tag =>
            {
                if (tag is Case caseTag)
                {
                    return(caseTag.IsCondition(context));
                }

                return(false);
            }) ?? ChildTags.FirstOrDefault(tag => tag is Default);

            return(matchedTag);
        }
Ejemplo n.º 3
0
        public override void BuildSql(RequestContext context)
        {
            var matchedTag = ChildTags.FirstOrDefault(tag =>
            {
                if (tag.Type == TagType.SwitchCase)
                {
                    var caseTag = tag as Case;
                    return(caseTag.IsCondition(context));
                }
                return(false);
            });

            if (matchedTag == null)
            {
                matchedTag = ChildTags.FirstOrDefault(tag => tag.Type == TagType.SwitchDefault);
            }
            if (matchedTag != null)
            {
                matchedTag.BuildSql(context);
            }
        }
Ejemplo n.º 4
0
        public override string BuildSql(RequestContext context)
        {
            var matchedTag = ChildTags.FirstOrDefault(tag =>
            {
                if (tag.Type == TagType.SwitchCase)
                {
                    var caseTag = tag as Case;
                    return(caseTag.IsCondition(context, context.RequestParameters));
                }
                return(false);
            });

            if (matchedTag == null)
            {
                matchedTag = ChildTags.FirstOrDefault(tag => tag.Type == TagType.SwitchDefault);
            }
            if (matchedTag != null)
            {
                return(matchedTag.BuildSql(context));
            }
            return(String.Empty);
        }