Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Azure WebJobs SDK和Emulator-触发器不工作_C#_Azure_Azure Storage_Azure Webjobs_Azure Sdk .net - Fatal编程技术网

C# Azure WebJobs SDK和Emulator-触发器不工作

C# Azure WebJobs SDK和Emulator-触发器不工作,c#,azure,azure-storage,azure-webjobs,azure-sdk-.net,C#,Azure,Azure Storage,Azure Webjobs,Azure Sdk .net,我正在尝试将azure SDK从v1更新到v3,并将其连接到azure存储模拟器进行测试;使用控制台应用程序和.NET Framework 它似乎不喜欢以前工作的任何触发器,错误中的“SomeFunction”是一个带有超时的简单QueueTrigger 异常:Microsoft.Azure.WebJobs.Host.Indexers.FunctionIndexingException:“错误索引方法”*.SomeFunction” 内部异常:InvalidOperationException:

我正在尝试将azure SDK从v1更新到v3,并将其连接到azure存储模拟器进行测试;使用控制台应用程序和.NET Framework

它似乎不喜欢以前工作的任何触发器,错误中的“SomeFunction”是一个带有超时的简单QueueTrigger

异常:Microsoft.Azure.WebJobs.Host.Indexers.FunctionIndexingException:“错误索引方法”*.SomeFunction”

内部异常:InvalidOperationException:未配置存储帐户“存储”

[Timeout("00:30:00")]
public static async Task SomeFunction([QueueTrigger("queue")] CloudQueueMessage message, CancellationToken cancellationToken)
{
    // do stuff
}
app.config:

<connectionStrings>
  <add name="AzureWebJobsDashboard" connectionString="AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;DefaultEndpointsProtocol=http;BlobEndpoint=http://127.0.0.1:10000/devstoreaccount1;QueueEndpoint=http://127.0.0.1:10001/devstoreaccount1;TableEndpoint=http://127.0.0.1:10002/devstoreaccount1;" />
  <add name="AzureWebJobsStorage" connectionString="AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;DefaultEndpointsProtocol=http;BlobEndpoint=http://127.0.0.1:10000/devstoreaccount1;QueueEndpoint=http://127.0.0.1:10001/devstoreaccount1;TableEndpoint=http://127.0.0.1:10002/devstoreaccount1;" />
</connectionStrings>
<appSettings>
  <add key="StorageConnectionString" value="UseDevelopmentStorage=true" />
  <add key="AzureQueueName" value="queue" />
</appSettings>

1。使用appSettings.json Microsoft.Azure.WebJobs版本3不再配置
app.config
文件,而是配置
appSettings.json
文件。将其放置在应用程序的根目录中,并确保appSettings.json文件的“复制到输出目录”属性设置为“如果较新,则复制”或“始终复制”,或者直接使用“始终”或“保留最新”将其添加到
.csproj
文件中:

生产中
有关在版本3中配置的更多信息,请参阅。尽管它可能与您使用的.NET Framework有些不同。

这解决了我的问题,谢谢,appSettings.json是.NET核心方法吗?奇怪的app.config已被删除。这一定是我见过的关于配置azure存储的最有用的东西。你到底是怎么搞砸的?帮了大忙!
<Project ...> 
  ...
  <ItemGroup>
    <None Include="appSettings.json">
      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
    </None>
  </ItemGroup>
  ...
</Project>
{
  "ConnectionStrings": {
    "AzureWebJobsStorage": "UseDevelopmentStorage=true"
  }
}
{
  "ConnectionStrings": {
    "AzureWebJobsStorage": "DefaultEndpointsProtocol=https;AccountName=mystorage;AccountKey=key;..."
  }
}