最近,我们用minmal托管模型将.net3.1迁移到.net6.0。Steeltoe配置在迁移后没有加载,但在.netcore 3.1中也是如此。代码:builder.ConfigureAppConfiguration((hostContext, configApp) => { configApp.AddConfigServer(); })
应用程序部署在我们正在获得的天蓝色错误中。
Application: w3wp.exeCoreCLR版本: 6.0.322.12309 .NET版本: 6.0.3描述:进程由于未处理的异常而终止。异常信息: Steeltoe.Extensions.Configuration.ConfigServer.ConfigServerException:无法定位PropertySource,设置了fail属性,失败-> System.Net.Http.HttpRequestException:试图以其访问权限禁止的方式访问套接字。(localhost:8888) --> System.Net.Sockets.SocketException (10013):尝试以其访问权限禁止的方式访问套接字。(在System.Net.Sockets.Socket.AwaitableSocketAsyncEventArgs.ThrowException(SocketError错误处,CancellationToken cancellationToken)
发布于 2022-03-11 19:59:59
检查配置服务器地址的设置和添加配置提供程序的顺序。您看到的消息是无法连接到端口8888上的本地主机。除非您在Azure中的应用程序的同一台计算机上运行配置服务器,否则就会出现配置错误。
我不知道您正在配置哪个构建器,但是在.NET 6最小API项目中,Steelto3.1.3可以很好地连接到运行在本地主机上的配置服务器,下面的示例是:.csproj:
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<TargetFramework>net6.0</TargetFramework>
<Nullable>enable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Steeltoe.Extensions.Configuration.ConfigServerCore" Version="3.1.3" />
</ItemGroup>
</Project>appsettings.json:
{
"Spring": { "Cloud": { "Config": { "FailFast": true } } }
}program.cs:
using Steeltoe.Extensions.Configuration.ConfigServer;
var builder = WebApplication.CreateBuilder(args);
builder.Configuration.AddConfigServer();
builder.Services.AddRazorPages();
var app = builder.Build();
if (!app.Environment.IsDevelopment())
{
app.UseExceptionHandler("/Error");
app.UseHsts();
}
app.UseHttpsRedirection();
app.UseStaticFiles();
app.UseRouting();
app.UseAuthorization();
app.MapRazorPages();
app.Run();https://stackoverflow.com/questions/71420613
复制相似问题