在Win窗体中使用Azure辅助角色背景服务

时间:2016-02-14 05:30:30

标签: c# azure azure-worker-roles

我创建了一个新的winforms应用程序。我正在尝试创建一个侦听存储队列以查找消息的类。

[BookName] LIKE '%ASPSolution%' or [WriterName] LIKE '%ASPSolution%' or [BookLanguage] LIKE '%ASPSolution%'

如何让工作人员开始在表单中运行以运行并告诉我何时在队列中找到消息?

当前实例化此类并在Form Load中调用Run()会锁定表单。

这样做的模式是什么?

1 个答案:

答案 0 :(得分:1)

我怀疑对工人角色存在基本的误解。这些不是您像类一样实例化的服务。相反,这些是在Azure中运行的无状态虚拟机的定义。您发布的代码段是在引导辅助角色实例(VM)后运行的框架代码,其中包含在Run()方法中运行的代码(例如,队列消耗)。

WinForms应用程序不需要RoleEntryPoint类,因为它们仅在Azure中运行的无状态VM中使用。

队列处理(或您可能需要运行的任何其他任务)与工作人员角色无关;您的应用只需使用存储SDK(或直接调用REST API)即可使用队列消息。设置队列处理逻辑的方式/位置完全取决于您。

注意:您当然可以从WinForms应用程序中调用在辅助角色实例中运行的服务,但我认为这不是您所要求的。

StackOverflow上有几个答案,详细介绍了工作人员角色,例如this one