예제 #1
0
        public IStringTemplate Parse(string templateData, StringTemplateParserOption options = StringTemplateParserOption.PreserveTemplate)
        {
            var builder = new StringTemplateBuilder();

            AddParameters(builder, templateData);

            if (options == StringTemplateParserOption.FixMalformedTemplate)
            {
                templateData = FixMalformedTemplate(templateData);
            }

            builder.SetFormat(templateData);
            return(builder.Build());
        }
예제 #2
0
        public string Format(string message, object[] args, StringTemplateParserOption options)
        {
            var template = parser.Parse(message, options);

            var str = stringProvider.Get(message);

            if (str == message)
            {
                return(processor.Process(template, args));
            }

            var templateOverride = parser.Parse(str, options);

            return(processor.Process(template, templateOverride, args));
        }