Azure / azure-functions-vs-build-sdk

MSBuild task for Azure Functions
MIT License
96 stars 62 forks source link

[BUG] Could not load file or assembly 'Microsoft.Extensions.Configuration.Abstractions, Version=7.0.0.0 #614

Open jsquire opened 1 year ago

jsquire commented 1 year ago

Issue Transfer

This issue has been transferred from the Azure SDK for .NET repository, #37271.

Please be aware that @Prince269090 is the author of the original issue and include them for any questions or replies.

Details

Library name and version

Microsoft.NET.Sdk.Functions" Version="4.2.0

Describe the bug

I have function app with below packages and files. and i am always getting error during run.

[assembly: FunctionsStartup(typeof(Startup))]
namespace SampleErrors
{
    /// <summary>
    /// A class that inherits from FunctionsStartup and overrides the methods to configure the app and the host for Azure Functions.
    /// </summary>
    public class Startup : FunctionsStartup
    {
        /// <summary>
        /// Configures the app configuration using the given builder.
        /// </summary>
        /// <param name="builder">The functions configuration builder.</param>
        public override void ConfigureAppConfiguration(IFunctionsConfigurationBuilder builder)
        {
        }

        /// <summary>
        /// Configures the host using the given builder.
        /// </summary>
        /// <param name="builder">The functions host builder.</param>
        public override void Configure(IFunctionsHostBuilder builder)
        {
            var configurationBuilder = new ConfigurationBuilder()
                   .SetBasePath(Environment.CurrentDirectory)
                   .AddEnvironmentVariables();

            var location = string.IsNullOrEmpty(Environment.GetEnvironmentVariable(ConfigurationConstants.LOCATION))
               ? string.Empty
               : Environment.GetEnvironmentVariable(ConfigurationConstants.LOCATION);

            var environment =
                string.IsNullOrEmpty(Environment.GetEnvironmentVariable(ConfigurationConstants.ASPNETCORE_ENVIRONMENT))
                    ? ConfigurationConstants.ENVIRONMENT_UAT
                    : Environment.GetEnvironmentVariable(ConfigurationConstants.ASPNETCORE_ENVIRONMENT);

            configurationBuilder.AddJsonFile($"{ConfigurationConstants.APPSETTINGS}.{environment}{location}.json", optional: true, reloadOnChange: true);

#if DEBUG
            configurationBuilder.AddJsonFile($"appsettings.json", optional: true);
#endif

            var configuration = configurationBuilder.Build();
            builder.Services.AddSingleton(configuration);

            builder.Services.AddLogging();
            builder.Services.AddTransient<Function1>();
        }

    }
}

Function

 public class Function1
    {
        [FunctionName("Function1")]
        public void Run([ServiceBusTrigger("errorsprocessorqueue", Connection = "ServiceBusConnection", IsSessionsEnabled =true)]string myQueueItem, ILogger log)
        {
            log.LogInformation($"C# ServiceBus queue trigger function processed message: {myQueueItem}");
        }
    }

Packages

<ItemGroup>
      <PackageReference Include="Microsoft.NET.Sdk.Functions" Version="4.2.0" />
      <PackageReference Include="Microsoft.Azure.WebJobs.Extensions.ServiceBus" Version="5.11.0" />
      <PackageReference Include="Microsoft.ApplicationInsights.AspNetCore" Version="2.21.0" />
      <PackageReference Include="Microsoft.Extensions.Configuration.AzureAppConfiguration" Version="6.0.1" />
      <PackageReference Include="Microsoft.Azure.Functions.Extensions" Version="1.1.0" />
      <PackageReference Include="Microsoft.Azure.ServiceBus" Version="5.2.0" />
      <PackageReference Include="Microsoft.Extensions.DependencyInjection" Version="7.0.0" />
      <PackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="6.0.3" />
      <PackageReference Include="Microsoft.Extensions.Configuration" Version="7.0.0" />
      <PackageReference Include="System.Drawing.Common" Version="7.0.0" />
  </ItemGroup>

Expected behavior

It should run without issue or error

Actual behavior

Error

[2023-06-28T12:51:16.695Z] A host error has occurred during startup operation 'c107b0b5-9651-48c1-8234-b5668db91149'. [2023-06-28T12:51:16.700Z] Microsoft.Azure.WebJobs.Script: Error configuring services in an external startup class. SampleErrors: Could not load file or assembly 'Microsoft.Extensions.Configuration.Abstractions, Version=7.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'. The system cannot find the file specified.

Reproduction Steps

Create function app with the files given and when we run its giving issue. its in .net 6

Environment

.net 6 Visual studio 2022 OS : Windows 11

AndreiSchillerChan commented 4 months ago

Any update on this?