这是我在program.cs中的“完整”代码。
var builder = WebApplication.CreateBuilder(args);
builder.Host.UseWindowsService();
// Add services to the container.
builder.Services.AddGrpc();
var app = builder.Build();
// Configure the HTTP request pipeline.
app.MapGrpcService<GreeterService>();
app.MapGet("/", () => "error");
app.Run();套餐:
我部署了一个测试服务器,并尝试启动service...and,我在事件日志中得到了这样的结果:
应用程序: PartReservationGrpc.exe CoreCLR版本: 6.0.622.26707 .NET版本: 6.0.6描述:进程由于未处理的异常而终止。异常信息: System.NotSupportedException:内容根目录从“C:\windows\system32 32”更改为“D:\CMAP\iceman\part订制”。不支持使用WebApplicationBuilder.Host更改主机配置。使用WebApplication.CreateBuilder(WebApplicationOptions)代替。(在Microsoft.AspNetCore.Builder.ConfigureHostBuilder.ConfigureHostConfiguration(Action
1 configureDelegate) at Microsoft.Extensions.Hosting.HostingHostBuilderExtensions.UseContentRoot(IHostBuilder hostBuilder, String contentRoot) at Microsoft.Extensions.Hosting.WindowsServiceLifetimeHostBuilderExtensions.UseWindowsService(IHostBuilder hostBuilder, Action1配置) at Microsoft.Extensions.Hosting.WindowsServiceLifetimeHostBuilderExtensions.UseWindowsService(IHostBuilder hostBuilder) at Program.$(String[] args)在C:\Users\WuJ22\source\Workspaces\C5CG2133PXF\gRPC\PartReservation\PartReservation\PartReservationGrpc\Program.cs:line 33中
第33行:正是UseWindowsService()的生成位置。
有人遇到过这个问题吗?
发布于 2022-07-11 17:51:12
答案可以找到here
诀窍是用CreateBuilder()调用WebApplicationOptions来设置ContentRootPath.
https://stackoverflow.com/questions/72932609
复制相似问题