我正在使用 Visual Studio Professional 2019 版本 16.8.1 开发一个简单的 Blazor ASP.NET CORE Web 程序集项目(异常也发生在版本 16.8.0 中)。
有时,当我启动应用程序时,我会收到运行时错误“无法启动调试适配器异常类型Microsoft.VisualStudio.Shared.VSCodeDebugProtocol.ProtocolException并且项目无法在浏览器中启动”。
应用程序启动的浏览器是新的 Microsoft Edge。
该消息可以在下面看到:
我正在尝试在 ASP.NET Core 上启动并运行 WebSocket 服务器。我创建了一个空的 web 项目,dotnet new web将其更改Program.cs为:
public static void Main(string[] args) {
Host.CreateDefaultBuilder(args)
.ConfigureWebHostDefaults(webBuilder => {
webBuilder.UseStartup<Startup>();
})
.Build()
.Run();
}
Run Code Online (Sandbox Code Playgroud)
AndStartup.cs的ConfigureServices方法:
public void ConfigureServices(IServiceCollection services) {
services.AddControllers();
services.AddWebSockets();
}
Run Code Online (Sandbox Code Playgroud)
和Configure方法:
public void Configure(IApplicationBuilder app, IWebHostEnvironment env) {
app.UseWebSockets();
app.UseRouting();
app.UseEndpoints(endpoints => {
endpoints.MapControllers();
endpoints.MapConnectionHandler<WebSocketHandler>("/ws");
});
}
Run Code Online (Sandbox Code Playgroud)
我WebSocketHandler的OnConnectedAsync方法如下:
public override async Task OnConnectedAsync(ConnectionContext connection)
{
var context = connection.GetHttpContext();
var endpoint = …Run Code Online (Sandbox Code Playgroud) 我正在对我的 API 进行版本控制,并且我想在 Swagger 中显示最新的 API 版本作为默认值。比如我的API有2个版本,当有人选择显示Swagger时,最先出现的版本是V1.0。用户必须手动选择要显示的最新版本。
在下图中,我们可以看到应用程序启动时向用户显示的默认版本是 V1.0。
我想知道是否可以默认向用户显示最新的 API 版本。
谢谢!
c# ×2
.net-core ×1
asp.net ×1
asp.net-core ×1
blazor ×1
swagger ×1
swashbuckle ×1
websocket ×1