多次读取 BrokeredMessage 正文
Read BrokeredMessage body multiple time
我知道错误消息是不言自明的,我们不能多次读取消息正文。这里我使用 AOP (Aspect Oriented Programming) 来审计日志。
[AuditServiceMethod(AttributePriority = 0)]
[FunctionName("ValidateSubscriber")]
public static async Task RunAsync([ServiceBusTrigger("validate-message", AccessRights.Manage,
Connection = "ServiceBusConnection")]BrokeredMessage message,
TraceWriter log,
[Inject(typeof(ICommonUtilities))] ICommonUtilities commonUtility)
{
string body;
using (var stream = message.GetBody<Stream>())
using (var streamReader = new StreamReader(stream, Encoding.UTF8))
{
body = await streamReader.ReadToEndAsync();
}
}
[AuditServiceMethod] 是审计请求、响应和错误日志的方面。
有什么好的解决方法可以在 Azure 函数中多次获取正文吗??
您需要 clone BrokeredMessage
并使用克隆邮件而不是原始邮件。
我知道错误消息是不言自明的,我们不能多次读取消息正文。这里我使用 AOP (Aspect Oriented Programming) 来审计日志。
[AuditServiceMethod(AttributePriority = 0)]
[FunctionName("ValidateSubscriber")]
public static async Task RunAsync([ServiceBusTrigger("validate-message", AccessRights.Manage,
Connection = "ServiceBusConnection")]BrokeredMessage message,
TraceWriter log,
[Inject(typeof(ICommonUtilities))] ICommonUtilities commonUtility)
{
string body;
using (var stream = message.GetBody<Stream>())
using (var streamReader = new StreamReader(stream, Encoding.UTF8))
{
body = await streamReader.ReadToEndAsync();
}
}
[AuditServiceMethod] 是审计请求、响应和错误日志的方面。 有什么好的解决方法可以在 Azure 函数中多次获取正文吗??
您需要 clone BrokeredMessage
并使用克隆邮件而不是原始邮件。