使用会话 ID 将消息添加到 IAsyncCollector 主题输出

2024-04-26

目前是否可以将消息推送到 Azure 函数的 IAsyncCollector 主题输出并设置会话 ID?我的主题实际上是关于 FIFO 排序的,所以我们必须设置会话。因此,我们设想只设置一个 Guid 作为唯一的会话 ID。我知道如何通过此输出将消息推送到我的主题,但当然会出错,因为我们没有显式设置会话 ID。当我们将其发送到 IAsyncCollector 时,是否可以在代码中的某个位置设置它?

这就是我们所拥有的,

[FunctionName("AccountCreatedHook")]
public static async Task<HttpResponseMessage> Run([HttpTrigger(AuthorizationLevel.Function, "post", Route = null)]HttpRequestMessage req,
    TraceWriter log, [ServiceBus("topic-name", Connection = "busname", EntityType = Microsoft.Azure.WebJobs.ServiceBus.EntityType.Topic)] IAsyncCollector<AccountEventDTO> accountCreatedTopic)
{
    log.Info("C# HTTP trigger function processed a request.");

    // Get request body
    var accountEvent = await req.Content.ReadAsAsync<AccountEventDTO>();
    var payload = req.Content.ReadAsStringAsync().Result;

    if (accountEvent != null && accountEvent.Name != null)
    {
        await accountCreatedTopic.AddAsync(accountEvent);
        return req.CreateResponse(HttpStatusCode.OK, "Account successfully added to topic.");
    }

    return req.CreateResponse(HttpStatusCode.BadRequest, "Account was not formed well.");
}

而不是绑定到你的AccountEventDTO直接,你需要绑定到Message(Azure Functions v2)或BrokeredMessage(Azure 函数 v1)。然后你可以设置SessionId消息上的属性。

要设置消息正文,请将 DTO 序列化为 JSON 并对其进行 UTF-8 编码:

var bytes = Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(accountEvent));
var message = new Message(bytes) { SessionId = sessionId };

对于 v2 或

var bytes = Encoding.UTF8.GetBytes(JsonConvert.SerializeObject(accountEvent));
var memoryStream = new MemoryStream(bytes, writable: false);
var message = new BrokeredMessage(memoryStream) { SessionId = sessionId };

for v1.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用会话 ID 将消息添加到 IAsyncCollector 主题输出 的相关文章

  • OpenCV Visual Studio ntdll.dll

    我尝试在 Visual Studio 2013 上使用 OpenCV 2 4 10 创建一个项目 但由于以下异常 到目前为止我运气不佳 请建议帮助 TIA letstryitonemoretime exe Win32 Loaded C Us
  • gtest 和 gmock 有什么区别?

    我试图理解的目的google mock Google 的 C 模拟框架 https github com google googletest blob master googlemock README md 我已经与gtest较早 但我还是
  • 如何在 MFC 中调整对话框大小时移动控件?

    我已经在 MFC 中创建了对话框视图 从下图中可以清楚地看到 如滑块控件和编辑框等 当我调整对话框大小时 这些控件不会移动 在此输入图像描述 https i stack imgur com 7OxAK jpg 我想移动控件以适应对话框 但不
  • C++ 中的单例和抽象基类

    最近我遇到了关于实现 Singleton 但涉及抽象基类的问题 假设我们有这样的类层次结构 class IFoo it s ABC class Foo public IFoo 我们的单例类定义如下 template
  • 避免集合已修改错误

    Issue 我有以下代码 foreach var ItemA in GenericListInstanceB ItemA MethodThatCouldRemoveAnyItemInGenericListInstanceB 显然我得到一个错
  • 基于 MS Bot Framework 中的响应分支对话框/表单

    我们正在尝试使用 MS Bot Framework 但尚未完全弄清楚如何实现此场景 我们有一个 LUIS 对话框 类型 它工作正常并且经过适当的培训 以常见的三明治为例 LUIS 意图寻找的基本内容是用户询问订单状态 如果问题中提供了订单号
  • 将列表(对象)转换为列表(字符串)

    有没有办法转换List of Object to a List of String 在 c 或 vb net 中而不迭代所有项目 幕后迭代很好 我只想要简洁的代码 Update 最好的方法可能就是进行新的选择 myList Select f
  • 具有多重继承的类的 sizeof

    首先 我知道 sizeof 取决于机器和编译器的实现 我使用的是 Windows 8 1 x64 gcc 5 3 0 没有标志传递给编译器 我从大学讲座中得到了以下代码 include
  • 使用成员作为实现者来实现接口

    我有实现 IA 的 A 类 现在我需要创建也应该实现 IA 的类 B B 类有 A 类的实例作为成员 有什么方法可以定义A的实例实现B类中的IA吗 interfase IA void method1 void method2 void me
  • 如何用C++解析复杂的字符串?

    我试图弄清楚如何使用 解析这个字符串sstream 和C 其格式为 string int int 我需要能够将包含 IP 地址的字符串的第一部分分配给 std string 以下是该字符串的示例 std string 127 0 0 1 1
  • 简单的文档管理系统和API [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • Azure 流量管理器可以与 API 管理一起使用吗?

    当我将端点添加到流量管理器时 只有网站和云服务可供选择 我可以将 API 管理服务与流量管理器结合使用吗 是的 除了 Azure 网站和 Azure 云服务之外 还可以将外部终结点添加到 Azure 流量管理器配置文件中 您将需要使用 Az
  • 无法将方法组“Read”转换为非委托类型“bool”

    我正在尝试使用SqlDataReader检查条目是否存在 如果存在则返回ID 否则返回false 当我尝试编译时 出现错误 无法将方法组 Read 转换为非委托类型 bool 我一直在遵循在 VB 中找到的示例 但似乎翻译可能不正确 pri
  • 为什么 std::ranges::filter_view 对象必须是非常量才能查询其元素?

    include
  • C 的“char”使用什么字符集? [复制]

    这个问题在这里已经有答案了 简单的问题 我最近开始用 C 编程 有一个简单的问题 C 编程语言在其 char 类型中使用什么字符集 例如 ASCII 还是取决于软件 操作系统 char 本质上是 1 个字节 主要在所有操作系统上 所以默认情
  • 需要使用 openssl 加密和解密文件的示例 C 代码

    我正在用 Linux C 编写代码 我需要使用以下命令来加密和解密文件 openssl 目前 我使用系统命令 des3 e nosalt k 0123456789012345 in inp file out out file 进行加密 使用
  • 实体框架代理创建

    我们可以通过使用来停止在上下文构造函数中创建代理 this Configuration ProxyCreationEnabled false 在 EF 4 1 中创建代理有哪些优点和缺点 代理对于两个功能是必需的 延迟加载 导航属性在第一次
  • 将小数格式化为两位或整数

    对于 10 我想要 10 而不是 10 00 对于 10 11 我想要 10 11 没有代码可以实现吗 即通过指定格式字符串类似于 0 N2 decimal num 10 11M Console WriteLine num ToString
  • 编译器可以报告未知属性的错误吗?即使有范围?

    在N3291 7 6 1 3 5 属性语法和语义 decl attr grammar 关于如何属性是用我读过的源代码写的 使用一个属性范围令牌是有条件支持的 实现定义的行为 and For an 属性标记本国际标准中未指定 该行为是实现定义
  • 什么时候使用静态库需要头文件?

    如果我在 Linux 中用 C 创建一个静态库并生成 a 文件 我 或其他人 如何使用该库 例如 我的库定义了一个类 我认为仅仅提供 a 文件是不够的 还需要提供头文件 我如何知道 a 文件必须提供哪些头文件 例如 我是否需要提供我的库代码

随机推荐

  • Python边缘检测和曲率计算

    我知道边缘检测问题之前已经发布过 在Java中 计算图像中对象的数量 https stackoverflow com questions 2952165 count the number of objects in an image 与语言
  • 如何将 iframe 转换为画布?

    我正在尝试将所有内容作为图像保存到另一个页面中 我已经探索了执行此操作的方法 因此我认为我需要首先将该页面转换为画布 因此 我尝试使用要先将其保存为 iframe 的链接 然后将 iframe 转换为画布 但它不起作用 document r
  • CSS,悬停一个元素,影响另一个元素

    当我将鼠标悬停在 li a 上时 我可以影响普通 CSS 中的另一个元素吗 因为我试图在悬停链接时将一个框作为背景元素滑入 与此网站导航完全相同 只是不是在激活时使用 而是通过悬停来使用 http www zindhai com http
  • Mobile Safari HTML5 视频 - 事件侦听器“结束”不会第二次触发

    我正在尝试添加一个按钮 按下时将播放视频 并且当视频结束时显示图像 问题是 我第二次按下按钮时 视频结束 并且没有任何反应 就好像事件侦听器没有被调用一样 var video document getElementById video fu
  • PHP 删除字符串中最后一次出现某个字符后的字符

    所以测试用例字符串可能是 http example com u ben Or http example com 我试图删除最后一次出现 之后的所有内容 但前提是它不是 http 的一部分 这可能吗 到目前为止我有这个 url substr
  • 如何从数组C++中获取唯一的字符串

    我知道我的问题对某些人来说可能很愚蠢 但我整天用谷歌搜索并尝试制定自己的解决方案 但我失败了 请帮助 我需要从简单的字符串数组中打印所有唯一的字符串 example 输入 嗨 我的 名字 嗨 土豆 文本 名字 嗨 输出 我的 土豆 文本 我
  • 控制换行以使线条等宽

    如果 h1 太长而无法容纳在一行中并换行到下一行 我希望这两行的宽度大致相同 我已经到处寻找 CSS 解决方案 但没有成功 CSS 真的不可能做到这一点吗 这似乎是一个如此简单的事情 在很多情况下都很有用 所以我真的很困惑 这似乎不能用 C
  • Chrome 开发者工具 CSS 文件中的某些样式变灰/不可编辑?

    我发现了很多关于 Chrome 开发者工具中灰色样式的问题 但没有一个问题能够描述我的奇怪行为 我在 CSS 文件中有简单的类样式 由于某种原因 我可以编辑其中一个 但不能编辑另一个 CSS 文件 result background col
  • ng 完成不再存在

    刚刚更新为使用最新版本的 Angular CLI 6 0 如何为 ng 二进制文件设置 bash 补全 它曾经是 lt ng completion bash in the bashrc文件 但现在不再了 这还能实现吗 根据this http
  • I/system_server:单向函数结果将被丢弃,但完成状态为 OK 且包裹大小为 4

    我有时会在 logcat 中看到这个 但不知道这意味着什么 我通过在函数参数中传递视图来解决 My XML
  • 从右侧使用 SlidingPaneLayout?

    是否有可能以某种方式使用Android的SlidingPaneLayout来完成它所做的事情 除了从相反的一侧 IE 我想滑动屏幕的右侧而不是左侧来显示第二个窗格 并且它从右侧而不是左侧滑入 理想情况下 我正在寻找一种方法来使用此布局或对其
  • 如何使用 比较 2 个字符串?

    我正在尝试显示一个
  • 在 EF Core 中编写不区分大小写的搜索查询?

    我想问一个关于 SQL Server 和 EF Core 的问题 数据库中的排序规则是Latin1 CI AS我想编写一个包含土耳其字符的搜索查询 在数据库中 人员 表中有一条名为 SEL M 的记录 当我在 EF Core 中编写这样的查
  • html5视频上的圆角

    有没有办法使用 CSS3 border radius 属性截掉 html5 视频元素的角 查看这个例子 http jsfiddle net inquisitive web developer vDPW2 它不起作用 创建一个带有圆角和溢出
  • 创建 32 位计数器时出现全局变量问题

    我正在尝试做正交解码 using 爱特梅尔 Xmega AVR微控制器 Xmega只有16 bit柜台 另外 我已经用完了所有可用的计时器 现在要做32 bit柜台我用过一个16 bit柜台并在其over under flow interr
  • VB.NET 中的下拉菜单

    我有一个小要求 那就是 表单上有两个组合框 用于填充员工姓名和角色 我按如下方式填充组合框 我创建了一个名为 DbConnect 的类 其中有 02 个函数 Public Function getEmployees As DataTable
  • 如何在 WPF 和 ASP.NET MVC 应用程序之间共享最多的代码?

    我可以使用什么架构和模式在 WPF 和 ASP NET MVC 应用程序之间共享最多的模型和逻辑代码 我试图在这里实现更多目标 而不仅仅是将我的数据实体与两个演示项目分开 还有很多共同点 例如关于在什么条件下显示什么 何时需要某些内容等的
  • 如何使用 XSL 在 Mozilla 中显示。

    我怎样才能显示 nbsp 在 Mozilla 中使用 XSL 我尝试过 CDATA 但没有成功 我使用的是火狐浏览器3 5 5 因为您无法将 HTML 字符实体直接放入 XSLT 源中 除了 lt gt apos quot and amp
  • Android 浏览器报告屏幕尺寸错误?

    我正在开发一个移动网站 我遇到了一个有趣的问题 我正在我的台式机以及我的 Motorola Droid Android 2 2 上进行测试 我设置了媒体查询来加载 3 个不同的样式表 320 像素宽 480 像素宽和 640 像素宽 我注意
  • 使用会话 ID 将消息添加到 IAsyncCollector 主题输出

    目前是否可以将消息推送到 Azure 函数的 IAsyncCollector 主题输出并设置会话 ID 我的主题实际上是关于 FIFO 排序的 所以我们必须设置会话 因此 我们设想只设置一个 Guid 作为唯一的会话 ID 我知道如何通过此