首页 > 解决方案 > .net 框架 4.7.2 json 设置

问题描述

我正在尝试配置我的网站,以便每个 json 都在 camelCase 中序列化,但现在情况并非如此。

我已经阅读了几篇帖子,其中每个人都建议我需要配置 Global.asax 文件,到目前为止,我已经尝试了几种方法,但都没有成功:

protected void Application_Start()
    {
         JsonConvert.DefaultSettings = () =>
        {
            var settings = new JsonSerializerSettings();
            settings.ContractResolver = new CamelCasePropertyNamesContractResolver();
            return settings;
        };

        AreaRegistration.RegisterAllAreas();
        FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
        RouteConfig.RegisterRoutes(RouteTable.Routes);
        BundleConfig.RegisterBundles(BundleTable.Bundles);
    }

protected void Application_Start()
    {

        GlobalConfiguration.Configuration
                            .Formatters
                            .JsonFormatter
                            .SerializerSettings
                            .ContractResolver = new CamelCasePropertyNamesContractResolver();


        AreaRegistration.RegisterAllAreas();
        FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
        RouteConfig.RegisterRoutes(RouteTable.Routes);
        BundleConfig.RegisterBundles(BundleTable.Bundles);
    }


protected void Application_Start()
    {
        HttpConfiguration config = GlobalConfiguration.Configuration;
        config.Formatters.JsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();
        config.Formatters.JsonFormatter.UseDataContractJsonSerializer = false;

        AreaRegistration.RegisterAllAreas();
        FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
        RouteConfig.RegisterRoutes(RouteTable.Routes);
        BundleConfig.RegisterBundles(BundleTable.Bundles);
    }

protected void Application_Start()
    {

        var jsonSerializer = Newtonsoft.Json.JsonSerializer.Create(new JsonSerializerSettings
        {
            ContractResolver = new CamelCasePropertyNamesContractResolver()
        });


        AreaRegistration.RegisterAllAreas();
        FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
        RouteConfig.RegisterRoutes(RouteTable.Routes);
        BundleConfig.RegisterBundles(BundleTable.Bundles);
    }

我很确定我做错了什么,我只是不知道它是什么。

我真的不需要明智地执行此应用程序,配置特定的控制器也可以。

关于项目的一些信息:这是一个 MVC5 应用程序,在 .net 框架 4.7.2 中运行

非常感谢!

标签: .netjsonasp.net-mvc

解决方案


推荐阅读