gpt4 book ai didi

c# - Azure WebJob 运行后更新 UI

转载 作者:行者123 更新时间:2023-12-03 05:55:34 25 4
gpt4 key购买 nike

我有一个网络作业,在收到队列消息后运行并更新数据库。此消息通常作为 ASP.NET MVC 应用程序中某个进程的一部分触发。

现在我想在 UI 上添加一个按钮,以便用户可以对要运行的作业排队消息,但我想使用 azure 的结果更新触发作业的用户的 View 网络作业。

我最初想到了 WebHooks,但这并不是 webhook 的设计目的。我唯一能想到的其他东西可能就是 SignalR 之类的东西。

这不是在 WebJob 中运行的一个过长的任务,但它以这种方式解耦是有充分理由的,而且我想在不重复的情况下使用相同的代码。

我还可以轮询数据库以查看数据是否已更新,但我真的不想这样做,因为如果没有数据更新,我将不知道作业是否已完成。轮询只是解决这个问题的错误方法。

所以本质上,会发生以下情况:用户请求更新 -> 添加到队列的更新请求 -> WebJobs 触发器并处理请求 -> 使用结果更新用户页面。

最佳答案

User request update -> update request added to queue -> WebJobs triggers and process request -> Page for the user is updated with the result

SignalR 是一个可用于开发实时 Web 功能的库,您可以调用 hub 方法从 WebJob 更新 Web 应用程序 UI。如果您想将数据保存/更新到 SQL 数据库并向浏览器广播更新通知,您可以使用 SignalR and SQL Dependency构建实时通知解决方案。此外,这个博客解释了如何communicate from an Azure WebJob to your website with SignalR ,请引用一下。

关于c# - Azure WebJob 运行后更新 UI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42201901/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com