C# 如何在Azure函数中使用带有System.Text.Json的IAsyncCollector设置camel大小写?
我正在将Azure函数v3从C# 如何在Azure函数中使用带有System.Text.Json的IAsyncCollector设置camel大小写?,c#,serialization,azure-functions,azureservicebus,system.text.json,C#,Serialization,Azure Functions,Azureservicebus,System.text.json,我正在将Azure函数v3从Newtonsoft.Json迁移到System.Text.Json,并尝试让camelCase在全局范围内工作 对于这些: 信号员 服务总线输出绑定 宇宙数据库 我能够显式地传递JsonSerializerOptions或全局设置它(SignalR),但我不能为IAsyncCollector这样做 这是我的密码: [FunctionName(nameof(SampleFunction))] public async Task Run( [ServiceB
Newtonsoft.Json
迁移到System.Text.Json
,并尝试让camelCase在全局范围内工作
对于这些:
- 信号员
- 服务总线输出绑定
- 宇宙数据库
JsonSerializerOptions
或全局设置它(SignalR),但我不能为IAsyncCollector
这样做
这是我的密码:
[FunctionName(nameof(SampleFunction))]
public async Task Run(
[ServiceBusTrigger(ServiceBusQueue.QueueA)] string json,
[ServiceBus(ServiceBusQueue.QueueB)] IAsyncCollector<Delivery> queueB,
[ServiceBus(ServiceBusQueue.QueueC)] IAsyncCollector<Driver> queueC,
ExecutionContext context)
{
// ... do some work
await queueB.AddAsync(objectB).ConfigureAwait(false);
// ... do some more work
await queueC.AddAsync(objectC).ConfigureAwait(false);
}
你知道如何让
IAsyncCollector
用camel case进行序列化吗?我建议不要使用IAsyncCollector
。IAsyncCollector
的提供程序没有太多用于配置的旋钮:
- 系列化
- 配料
- 重试
- 错误处理
更重要的是,一些实现在没有警告的情况下在不同版本之间更改了这些实现细节。出于这些原因,我建议不要使用
IAsyncCollector
,而直接使用API,这样您就可以完全控制所有这些方面IAsyncCollector
是一个很好的抽象,但正是这种抽象性质使它最终变得不合适。我建议不要使用IAsyncCollector
。IAsyncCollector
的提供程序没有太多用于配置的旋钮:
- 系列化
- 配料
- 重试
- 错误处理
更重要的是,一些实现在没有警告的情况下在不同版本之间更改了这些实现细节。出于这些原因,我建议不要使用
IAsyncCollector
,而直接使用API,这样您就可以完全控制所有这些方面IAsyncCollector
是一个很好的抽象,但正是这种抽象性质使它最终变得不合适。在使用Json.NET时,您是如何为IAsyncCollector
全局设置camel大小写的?@dbc I不是。我的模型具有JsonProperty
属性。当使用Json.NET时,您如何为IAsyncCollector
全局设置camel大小写?@dbc I没有。我的模型有JsonProperty
属性。我喜欢它的简单性,但你有一个很好的观点。如果没有配置这些方面的能力,它几乎是无用的。我喜欢它的简单性,但你有一个非常好的观点。如果没有配置这些方面的能力,它几乎毫无用处。
PropertyNamingPolicy = JsonNamingPolicy.CamelCase,
PropertyNameCaseInsensitive = true