.net - 找不到 microsoft.extensions.logging.abstractions

标签 .net azure azure-functions azure-webjobs

我将项目升级到 .net 7,但 FunctionApp 不再工作。它表示无法加载文件或程序集 Microsoft.extensions.logging.abstractions,因为找不到该文件。

这是我的项目:

`<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <TargetFramework>net7.0</TargetFramework>
    <AzureFunctionsVersion>v4</AzureFunctionsVersion>
  </PropertyGroup>
  <ItemGroup>
    <Compile Remove="FunctionInterfaces\**" />
    <Compile Remove="ModuleInterfaces\**" />
    <EmbeddedResource Remove="FunctionInterfaces\**" />
    <EmbeddedResource Remove="ModuleInterfaces\**" />
    <None Remove="FunctionInterfaces\**" />
    <None Remove="ModuleInterfaces\**" />
  </ItemGroup>
  <ItemGroup>
    <None Remove="Modules\MarketModule.cs~RF1b001614.TMP" />
  </ItemGroup>
  <ItemGroup>
    <Compile Include="ModuleInterfaces\Base\IModule.cs" />
    <Compile Include="ModuleInterfaces\IExchangeModule.cs" />
  </ItemGroup>
  <ItemGroup>
    <PackageReference Include="Microsoft.Azure.Functions.Extensions" Version="1.1.0" />
    <PackageReference Include="Microsoft.Azure.WebJobs" Version="3.0.33" />
    <PackageReference Include="Microsoft.Azure.WebJobs.Extensions.Storage" Version="5.0.1" />
    <PackageReference Include="Microsoft.Extensions.Azure" Version="1.6.0" />
    <PackageReference Include="Microsoft.Extensions.Caching.StackExchangeRedis" Version="7.0.0" />
    <PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="7.0.0" />
    <PackageReference Include="Microsoft.NET.Sdk.Functions" Version="4.1.3" />
  </ItemGroup>
  <ItemGroup>
    <ProjectReference Include="..\PMSX.Application\PMSX.Application.csproj" />
    <ProjectReference Include="..\PMSX.Domain\PMSX.Domain.csproj" />
    <ProjectReference Include="..\PMSX.Infrastructure\PMSX.Infrastructure.csproj" />
  </ItemGroup>`

我尝试删除 microsoft.net.sdk.functions,但这就是指定该项目是 functionapp 的原因。我也尝试过降级 webjobs,但没有效果。

最佳答案

感谢@ HariKrishna 获取您解决 .NET 6 Azure Functions 中的 NuGet 包 Microsoft.Extensions.X 升级问题的建议。这对我也有帮助。

Azure Functions V4 的 .NET 7 In-process 尚未发布,您的 workarounds显示了在 Azure Functions 的兼容版本中使用 Microsoft.Extensions.X 的更好解决方案。

But how do I debug my FunctionApp on my Visual Studio?

您可以使用 VS IDE 在 Debug模式下运行该函数,以便在本地进行调试。
enter image description here

将 Release模式更改为调试 > 放置断点 > 开始运行函数进行本地调试。

如果需求是远程调试,可以引用这个MS DocSO Thread有关在 Visual Studio for Azure Functions 项目上配置远程调试的详细信息。

关于.net - 找不到 microsoft.extensions.logging.abstractions,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74722132/

相关文章:

java - 使用 Python 或 Java 将数据从本地上传到 Azure ADLS Gen2

.net - SwitchToThread/Thread.Yield 与 Thread.Sleep(0) 与 Thread.Sleep(1)

c# - AsyncLocalValueChangedArgs<T>.ThreadContextChanged : what is it for?

sql - 从 R 连接到 Azure 数据库

azure - 无法使用 Visual Studio Code 创建 Azure 逻辑应用工作流

azure - 如何测试Azure函数的可扩展性?

python-3.x - 使用文件向 Common Data Service 发出 PATCH 方法请求

c# - 如何以编程方式隐藏桌面图标?

.net - NuGet 无法找到包的版本

Azure ML 推理管道部署授权 token 错误