我有一个Azure Function v2应用程序,我最初针对的是netcoreapp2.1。
然后我有了一个用[assembly: WebJobsStartup(typeof(Startup))]注释的Startup.cs类来设置dependency injection,但是它没有在extensions.json文件中注册Startup。
这是在build期间发生的。Publish has another issue at the moment。
当我将项目文件中的TargetFramework更改为netstandard2.0时,它会成功地将Startup添加到extensions.json
{
"extensions":[
{ "name": "AzureStorage", "typeName":"Microsoft.Azure.WebJobs.Extensions.Storage.AzureStorageWebJobsStartup, Microsoft.Azure.WebJobs.Extensions.Storage, Version=3.0.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"},
{ "name": "Startup", "typeName":"MyApp.Functions.Startup, MyApp.Functions, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"}
]
}虽然我没有确切的理由将netcoreapp2.1作为目标,但我很好奇为什么它不能工作,因为v2是changed to target .Net Core by default。
发布于 2019-03-12 11:54:57
我已经将Microsoft.NET.SDK.Functions从manage nuget packages升级到了1.0.26版本,并且工作正常。

发布于 2019-03-06 03:05:35
这个问题现在看起来已经修复了,只需将Microsoft.NET.SDK.Functions升级到1.0.25 +版本
发布于 2020-01-25 23:42:54
在我的例子中,我只是错过了显式地将host.json设置为被复制。将这些行添加到csproj文件中可以完成以下工作:
<ItemGroup>
<None Update="host.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
</ItemGroup>https://stackoverflow.com/questions/53062309
复制相似问题