我正在尝试在本地调试Azure函数。这是一个EventHubTrigger。
问题在于我需要在本地调试代码,因为我仍然没有“真实”设置。
我的代码当前如下所示:
case PricingActionTypes.AddPricing: {
return adapter.addOne(action.payload.pricing, state);
}
case PricingActionTypes.UpsertPricing: {
return adapter.upsertOne(action.payload.pricing, state);
}
case PricingActionTypes.AddPricings: {
return adapter.addMany(action.payload.pricings, state);
}
但是当我尝试调试它时,出现此错误:
Microsoft.Azure.WebJobs.Host:错误索引方法 'Notificator.Run'。 Microsoft.Azure.WebJobs.ServiceBus:无事件中心 收件人命名为成就。
这很正常,因为它不存在。
我的local.settings.json是这样的:
public static class Notificator
{
[FunctionName("Notificator")]
public static async Task Run([EventHubTrigger("achievements")]UserAchivementNofication notification, ILogger log)
{
}
}
如何调试代码?
谢谢!
答案 0 :(得分:2)
您需要在Azure上创建一个EventHub,以便可以在本地测试EventHug触发器,
{ "IsEncrypted": false, "Values": { "AzureWebJobsStorage": "UseDevelopmentStorage=true", "AzureWebJobsDashboard": "UseDevelopmentStorage=true", "EventHubConnectionString": "YourEventHubConnectionString" } }
您的功能应如下所示:
public static void Run([EventHubTrigger("EventHubName", Connection = "EventHubConnectionString")]EventData myEventHubMessage, TraceWriter log)