我在AZ耐用型中遇到此错误。
操作系统:Linux。
Csproj文件内容:
TargetFramework => netcoreapp3.1
AzureFunctionsVersion => v3
<PackageReference Include="AutoMapper" Version="9.0.0" />
<PackageReference Include="AutoMapper.Extensions.Microsoft.DependencyInjection" Version="7.0.0" />
<PackageReference Include="Microsoft.Azure.Functions.Extensions" Version="1.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="3.1.5"
<PackageReference Include="Microsoft.Extensions.Configuration.UserSecrets" Version="3.1.0" />
<PackageReference Include="Microsoft.Extensions.Http.Polly" Version="3.1.5" />
<PackageReference Include="Microsoft.NET.Sdk.Functions" Version="3.0.3" />
<PackageReference Include="Microsoft.Azure.WebJobs.Extensions.DurableTask" Version="2.2.2" />
Startup.cs代码:(..)
public override void Configure(IFunctionsHostBuilder builder)
{
var configuration = new ConfigurationBuilder()
.SetBasePath(Environment.CurrentDirectory)
.AddJsonFile("local.settings.json", optional: true, reloadOnChange: true)
.AddUserSecrets(Assembly.GetExecutingAssembly(), true)
.AddEnvironmentVariables().Build();
builder.Services.RegisterServices(configuration);
builder.Services.AddAutoMapper(typeof(Startup).GetTypeInfo().Assembly);
}
RegisterServices()...
公共静态无效RegisterServices(此IServiceCollection服务,配置配置) {
ConfigApi configApi = configuration.GetSection(ConfigApi.Section).Get<ConfigApi>();
services.AddSingleton(typeof(ConfigApi), configApi);
ApiManagerMap apiManager = configuration.GetSection(ApiManagerMap.Section).Get<ApiManagerMap>();
var endpointList = apiManager.ApiList.ToList();
services.AddSingleton(new AssetServiceConfig
{
AssetServiceEndpoint = endpointList.First(p => p.ApiName == "AssetService")
});
services.AddScoped<IAssetService, AssetService>();
services.AddScoped<ICatalogMap>(x => new CatalogMap(
x.GetRequiredService<IMapper>(), x.GetRequiredService<IAssetService>()));
services.AddSingleton(new PimServiceConfig
{
PimServiceEndpoint = endpointList.First(p => p.ApiName == "PIMService")
});
services.AddScoped<IPimService, PimService>();
services.AddSingleton(new CatalogServiceConfig
{
CatalogServiceEndpoint = endpointList.First(p => p.ApiName == "CatalogService")
});
services.AddScoped<ICatalogService, CatalogService>();
}
功能代码构造函数代码:(..)
private readonly ICatalogMap catalogMap;
private readonly IPimService pimService;
private readonly ICatalogService catalogService;
private readonly ConfigApi configApi;
public DownloadAndProcess(ICatalogMap catalogMap, IPimService pimService, ICatalogService catalogService, ConfigApi configApi)
{
this.catalogMap = catalogMap;
this.pimService = pimService;
this.catalogService = catalogService;
this.configApi = configApi;
}
当我将其部署到我的AZ订阅中时,总是得到提供的错误。