【发布时间】:2019-05-19 07:53:31
【问题描述】:
我正在尝试从 Azure Event Hub 接收数据并使用 signalR 在 .NET core 2.1 Web App 上显示它们。我已经按照本教程 https://docs.microsoft.com/en-us/azure/event-hubs/event-hubs-dotnet-standard-getstarted-receive-eph 进行操作,一切都在 .net 核心控制台应用程序上运行。但我一直坚持如何在网络应用程序中实现这一点。我还是网络应用程序的新手,所以也许我的问题是微不足道的。 这是主要的网络应用程序代码
public static void Main(string[] args)
{
CreateWebHostBuilder(args).Build().Run();
}
public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
WebHost.CreateDefaultBuilder(args)
.UseStartup<Startup>();
教程中负责部署事件处理器的部分代码位于 MainAsync(string[] args)
private static async Task MainAsync(string[] args)
{
Console.WriteLine("Registering EventProcessor...");
var eventProcessorHost = new EventProcessorHost(
EventHubName,
PartitionReceiver.DefaultConsumerGroupName,
EventHubConnectionString,
StorageConnectionString,
StorageContainerName);
// Registers the Event Processor Host and starts receiving messages
await eventProcessorHost.RegisterEventProcessorAsync<SimpleEventProcessor>();
Console.WriteLine("Receiving. Press ENTER to stop worker.");
Console.ReadLine();
// Disposes of the Event Processor Host
await eventProcessorHost.UnregisterEventProcessorAsync();
}
这是我的问题。如何运行 MainAsync 并运行 Web 应用程序?如果我做这样的事情
public static void Main(string[] args)
{
MainAsync(args);
CreateWebHostBuilder(args).Build().Run();
}
当事件中心有新事件时,一切都编译了,但什么也没有发生,我不知道为什么以及如何解决这个问题
【问题讨论】:
标签: c# azure web-applications .net-core azure-eventhub