Exemplo n.º 1
0
        private static void RegisterArticleOutputFormatters(FormatterCollection <IOutputFormatter> formatters)
        {
            formatters.Add(
                new ModelMediaTypeOutputFormatter <Article, XmlProductFormatter>(WebApiConstants.XmlMediaType));
            formatters.Add(
                new ModelMediaTypeOutputFormatter <Article, XamlProductFormatter>(WebApiConstants.XamlMediaType));
            formatters.Add(
                new ModelMediaTypeOutputFormatter <Article, JsonProductFormatter>(WebApiConstants.JsonMediaType));

            formatters.Add(
                new ModelMediaTypeOutputFormatter <Article, PdfProductFormatter>(WebApiConstants.PdfMediaType));
        }
Exemplo n.º 2
0
 private static void RestoreDefaultJsonOutputFormatter(FormatterCollection <IOutputFormatter> formatters, SystemTextJsonOutputFormatter jsonOutputFormatter)
 {
     if (jsonOutputFormatter != null)
     {
         formatters.Add(jsonOutputFormatter);
     }
 }
Exemplo n.º 3
0
        private TagNReplaceString(TagNReplaceString cloneFrom, eListCloneType listCloneType)
        {
            mbIgnoreTagCase = cloneFrom.mbIgnoreTagCase;

            mTagKeyComparer = new TagDefinitionValueComparer(mbIgnoreTagCase);

            // Same formatter instances used, but has its own list container.
            foreach (TagValueFormatterBase formatter in cloneFrom.mTagValueFormatters)
            {
                mTagValueFormatters.Add(formatter);
            }

            switch (listCloneType)
            {
            case eListCloneType.ByReference:
                mTagList = cloneFrom.mTagList;
                break;

            case eListCloneType.ByValue:
                mTagList = new TagNReplaceList(mTagKeyComparer, cloneFrom.mTagList);
                break;

            case eListCloneType.NewList:
                mTagList = new TagNReplaceList(mTagKeyComparer);
                break;
            }
        }
Exemplo n.º 4
0
 private static void RegisterContentOutputFormatters(FormatterCollection <IOutputFormatter> formatters)
 {
     formatters.Add(
         new ModelMediaTypeOutputFormatter <Content, XamlSchemaFormatter>(WebApiConstants.XamlMediaType));
     formatters.Add(
         new ModelMediaTypeOutputFormatter <Content, XmlSchemaFormatter>(WebApiConstants.XmlMediaType));
     formatters.Add(
         new ModelMediaTypeOutputFormatter <Content, JsonSchemaFormatter>(WebApiConstants.JsonMediaType));
     formatters.Add(
         new ModelMediaTypeOutputFormatter <Content, JsonDefinitionSchemaFormatter>(
             WebApiConstants.JsonDefinitionMediaType)
         );
     formatters.Add(
         new ModelMediaTypeOutputFormatter <Content, JsonDefinitionSchemaClassifiersAsBackwardsFormatter>(
             WebApiConstants.JsonDefinition2MediaType)
         );
 }
Exemplo n.º 5
0
        private static void RegisterInputFormatters(FormatterCollection <IInputFormatter> formatters)
        {
            formatters.Insert(0,
                              new ModelMediaTypeInputFormatter <Article, JsonProductFormatter>(WebApiConstants.JsonMediaType));
            formatters.Insert(0,
                              new ModelMediaTypeInputFormatter <Article, XmlProductFormatter>(WebApiConstants.XmlMediaType));
            formatters.Insert(0,
                              new ModelMediaTypeInputFormatter <Article, XamlProductFormatter>(WebApiConstants.XamlMediaType));


            formatters.Add(new BinaryInputFormatter(WebApiConstants.BinaryMediaType));
        }
Exemplo n.º 6
0
        private static void RegisterAuxOutputFormatters(FormatterCollection <IOutputFormatter> formatters)
        {
            formatters.Add(
                new ModelMediaTypeOutputFormatter <
                    Dictionary <string, object>[], XmlDataContractFormatter <Dictionary <string, object>[]>
                    >(WebApiConstants.XmlMediaType)
                );

            formatters.Add(
                new ModelMediaTypeOutputFormatter <
                    IEnumerable <Article>, JsonProductArrayFormatter
                    >(WebApiConstants.JsonMediaType)
                );

            formatters.Add(
                new ModelMediaTypeOutputFormatter <
                    IEnumerable <Article>, XmlDataContractFormatter <IEnumerable <Article> >
                    >(WebApiConstants.XmlMediaType)
                );

            formatters.Add(new BinaryOutputFormatter(WebApiConstants.BinaryMediaType));
        }
        /// <summary>
        /// Adds custom configured <see cref="JsonOutputFormatter"/>.
        /// </summary>
        /// <param name="outputFormatters"></param>
        public static void AddDefaultJsonOutputFormatter(
            this FormatterCollection <IOutputFormatter> outputFormatters)
        {
            IOutputFormatter outputFormatter = outputFormatters
                                               .FirstOrDefault(c => c is JsonOutputFormatter);

            if (outputFormatter != null)
            {
                outputFormatters.Remove(outputFormatter);
            }

            outputFormatters.Add(new JsonOutputFormatter(
                                     new JsonSerializerSettings().SetupDefaults(),
                                     ArrayPool <Char> .Shared));
        }