- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我创建了一个Azure Function每当将新消息添加到 Azure ServiceBus 队列时都会触发该事件。使用此代码可以正常工作:
#r "Newtonsoft.Json"
#load "..\shared\person.csx"
using Newtonsoft.Json;
using Newtonsoft.Json.Serialization;
public static void Run(string message, TraceWriter log)
{
var person = JsonConvert.DeserializeObject<Person>(message,
new JsonSerializerSettings() {ContractResolver = new CamelCasePropertyNamesContractResolver()});
log.Verbose($"From DeserializeObject: {person.FirstName} {person.LastName}");
}
我发现我也可以将消息绑定(bind)到 POCO,如下所示:
public static void Run(Person message, TraceWriter log)
{
log.Verbose($"From DeserializeObject: {message.FirstName} {message.LastName}");
}
现在我想将消息绑定(bind)到 BrokeredMessage
,因为我需要访问消息的属性。
最佳答案
编辑新 SDK 使用 #r 指令
支持 servicebus sdk
#r "Microsoft.ServiceBus"
using Microsoft.ServiceBus.Messaging;
public static void Run(BrokeredMessage msg, TraceWriter log)
{
log.Info($"C# ServiceBus queue trigger function processed message: {msg}");
}
旧版本
只需两步:
我创建了一个 project.json
文件来添加对 WindowsAzure.ServiceBus
Nuget 包的引用(请参阅 SO Post ):
{
"frameworks": {
"net46":{
"dependencies": {
"WindowsAzure.ServiceBus": "2.7.6"
}
}
}
}
我添加了对代理消息的引用:
using Microsoft.ServiceBus.Messaging;
public static void Run(BrokeredMessage message, TraceWriter log)
{
log.Verbose("Function has been triggered !!!");
}
关于c# - 在 Azure Function 中将 BrokeredMessage 与 ServiceBus 队列触发器结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36707066/
这与 this other question 直接相关。在使用 BrokeredMessage 的 .NET Framework 客户端传入和传出对象时,这些 BrokeredMessage 不仅仅使
这可能是 this question 的重复项但这与批处理数据库更新的讨论相混淆,并且仍然没有正确的答案。 在使用 Azure 服务总线队列的简单示例中,我无法在将 BrokeredMessage 放
我正在尝试使用服务总线Azure功能,在其中我接受BrokeredMessage,然后执行http请求,然后决定是完成、放弃还是死信消息。但我发现如果我等待 http 请求,BrokeredMessa
在没有任何自定义 DataContractSerializer[作为默认 XML 序列化程序发生] 的情况下通过 ServiceBus 传递代理消息。 var message = new Broker
我无法将我的 BrokeredMessage 标记为 Complete。 按预期工作的简单代码: private void OnMessageArrived(BrokeredMessage mess
我的 Azure 服务总线间歇性出现问题。有时,在总线上放置消息会导致以下异常: 类型:InvalidOperationException 消息:无法执行该操作,因为代理消息“723eab13dab3
我知道错误消息是不言自明的,我们无法多次读取消息正文。这里我使用AOP(面向方面编程)来进行审计日志。 [AuditServiceMethod(AttributePriority = 0)] [F
尝试提交消息正文中包含对象的队列消息,但在 BrokeredMessage 的下一行收到异常 QueueClient queueClient = QueueClient.CreateFromConne
我有一个计时器触发函数,它将对象发送到服务总线主题,如下所示 [FunctionName("ProcessTermedEmployee")] public static
尝试提交消息正文中包含对象的队列消息,但在 BrokeredMessage 的下一行收到异常 QueueClient queueClient = QueueClient.CreateFromConne
我有一个计时器触发函数,它将对象发送到服务总线主题,如下所示 [FunctionName("ProcessTermedEmployee")] public static
我曾经使用 RabbitMQ 作为消息传递平台,但从未遇到过任何问题 - 不幸的是,我们最近将基础架构移至 Azure,但他们不提供 RabbitMQ 服务器,因此我考虑尝试一下服务总线扩展名。 我有
我正在尝试将来自 Azure 服务总线的项目排队,以便可以批量处理它们。我知道 Azure 服务总线有一个 ReceiveBatch() 但它似乎有问题,原因如下: 我一次最多只能获取 256 条消息
我有一个 javascript 日志实用程序,它可以将请求批量发送到我的服务器,然后将它们转发到队列客户端 (Microsoft.ServiceBus.Messaging.QueueClient)。我
我们正在将应用程序从使用 MSMQ 转换为使用 Azure 服务总线。我们有一个对象(消息,类型),如下所示: [Serializable] public class LeadSubmissionMe
C# .NET Core Azure Functions v2; Microsoft.Azure.ServiceBus 3.2.0、Microsoft.Azure.WebJobs 3.0.2、Micr
我们对 Azure 服务总线客户端有以下包装: public virtual void SendMessage(object bodyObject) { var brokeredMessage
我有一个 BrokeredMessageContext 类,它使用 Timer 定期检查和更新 BrokeredMessage 实例上的锁,以防处理此消息的进程运行时间超过预期。它通过调用 Broke
当您在 Azure 服务总线中使用中转消息时,可以通过调用 .GetBody 检索消息正文。代码很简单: var msg = subscription.Receive(); MyPayload pay
我选择流分析作业内的数据并将其发送到 ServiceBus 输出。 是否可以为生成的 BrokeredMessage 设置 ContentType 或 Label 等属性? 最佳答案 目前这些属性不可
我是一名优秀的程序员,十分优秀!