升级至Scalar后,如何配置JSON属性SnakeCaseLower命名策略?
解决Scalar无法识别SnakeCaseLower JSON命名策略的问题
你在AddJsonOptions里配置的SnakeCaseLower命名策略只作用于API的请求/响应序列化,不会自动同步到Swagger生成的OpenAPI文档元数据中,而Scalar是基于这份元数据渲染文档的,所以才会继续显示CamelCase。按以下步骤配置即可解决:
给Swagger生成器指定命名策略
在AddSwaggerGen中添加Schema生成配置,将属性命名策略设为SnakeCaseLower:services.AddSwaggerGen(options => { options.SchemaGeneratorOptions.PropertyNamingPolicy = JsonNamingPolicy.SnakeCaseLower; });确认Scalar指向正确的Swagger文档
挂载Scalar UI时,确保它引用的是你配置好的Swagger JSON端点:app.UseScalarUI(options => { options.Path = "/scalar"; options.SwaggerEndpoint("/swagger/v1/swagger.json", "你的API V1版本"); });验证配置生效
启动服务后,先访问Swagger JSON端点(比如/swagger/v1/swagger.json),检查Schema中的属性名是否已变为蛇形小写;再打开Scalar界面,就能看到文档属性名和你的命名策略一致了。
内容的提问来源于stack exchange,提问作者imgen
相关产品推荐
相关产品推荐

