在Visual Studio中调试Azure函数



我最初创建我的Azure函数作为dotnet隔离与dotnet 5。不幸的是,由于这个问题,我不得不将其降级到进程中和dotnet core 3.1。

我的问题是VS似乎不知道它是一个功能应用程序。它被设置为启动项目,但当我按F5调试时,我得到的消息:

输出类型为类库的项目无法启动直接

cs proj文件的内容如下:

<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp3.1</TargetFramework>
<AzureFunctionsVersion>v3</AzureFunctionsVersion>
<Nullable>enable</Nullable>
<UserSecretsId>...</UserSecretsId>
</PropertyGroup>
<ItemGroup>
<None Remove="local.settings.json" />
</ItemGroup>
<ItemGroup>
<Content Include="local.settings.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<CopyToPublishDirectory>Never</CopyToPublishDirectory>
</Content>
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Mvc.Abstractions" Version="2.2.0" />
etc...
</ItemGroup>
<ItemGroup>
<ProjectReference...
</ItemGroup>
<ItemGroup>
<None Update="host.json">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
</ItemGroup>
</Project>

有谁知道VS使用什么来决定库应该作为一个函数应用程序运行?

问题是缺少对microt.net . sdk . functions的包引用。一旦我将以下内容添加到csproj文件中,我就可以进行调试了:

<PackageReference Include="Microsoft.NET.Sdk.Functions" Version="3.0.13" />

最新更新