避免特定方法的 CamelCasePropertyNamesContractResolver

Avoiding CamelCasePropertyNamesContractResolver for a specific method

我有网络 api 控制器,我在 WebApiConfig 文件中使用这种配置方法,用于所有控制器的驼峰式外壳。

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

现在我有一个控制器的方法,它向 Angularjs 翻译提供者提供数据,并且所有翻译字符串在我的 html 中都不是驼峰式的,这就是为什么我需要该方法的结果不是在 CamelCase 中。如何避免此特定控制器方法的驼峰式外壳序列化行为。

你可以使用 ApiController.Json method.

只是 return 从你的控制器方法中这样

return Json(data, new JsonSerializerSettings { ContractResolver = new DefaultContractResolver() });