Nad*_*baa 5 c# azure azure-webjobs azure-webjobssdk
这是我第一次使用WebJob类型的应用程序.我创建了一个webjob项目,并在解决方案中附带Program.cs
和Function.cs
.
我已经删除了,Function.cs
因为在这个项目中没有队列,我将从中获取数据.
现在Program.cs
已有Main方法如下:
class Program
{
// Please set the following connection strings in app.config for this WebJob to run:
// AzureWebJobsDashboard and AzureWebJobsStorage
static void Main()
{
var host = new JobHost();
// The following code ensures that the WebJob will be running continuously
host.RunAndBlock();
}
}
Run Code Online (Sandbox Code Playgroud)
据我所知,这RunAndBlock
是连续运行webjob,但我希望这项工作只运行一次.我想按计划从外部控制执行.我想知道如何让我的代码只运行一次?如下所示,我有一个SupportService
Class RunOnePoolProvisioingCycle
,我想只调用一次这个方法.这是正确的方法吗?
static void Main()
{
SupportService _supportService = new SupportService();
_supportService.Initialize();
_supportService.SetPoolProvisioningConfigurations();
_supportService.RunOnePoolProvisioningCycle();
}
Run Code Online (Sandbox Code Playgroud)
还是这个?
static void Main()
{
var host = new JobHost();
SupportService _supportService = new SupportService();
_supportService.Initialize();
_supportService.SetPoolProvisioningConfigurations();
host.Call(typeof(SupportService).GetMethod("SetPoolProvisioningConfigurations"));
}
Run Code Online (Sandbox Code Playgroud)
还是这个?
static void Main()
{
var host = new JobHost();
SupportService _supportService = new SupportService();
_supportService.Initialize();
_supportService.SetPoolProvisioningConfigurations();
host.CallAsync(typeof(SupportService).GetMethod("SetPoolProvisioningConfigurations"));
}
Run Code Online (Sandbox Code Playgroud)
或者我应该使用:
host.Start()
Run Code Online (Sandbox Code Playgroud)
要么
host.StartAsync()?
Run Code Online (Sandbox Code Playgroud)
你看到的是SDK的一部分,它是可选的。Webjob 可以像控制台应用程序一样简单,您可以按原样压缩、上传和运行。
所以这段代码似乎是您的情况的最佳选择:
static void Main()
{
SupportService _supportService = new SupportService();
_supportService.Initialize();
_supportService.SetPoolProvisioningConfigurations();
_supportService.RunOnePoolProvisioningCycle();
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2556 次 |
最近记录: |