You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

是否存在适用于VB和.NET 5的ASP.NET Core Web项目Visual Studio 2019模板

关于VS2019 v16.3缺少.NET 5 ASP.NET Core VB SignalR模板的问题解答

模板缺失原因

.NET 5阶段官方没有在Visual Studio内置VB语言的ASP.NET Core类项目模板,该问题和你使用的企业版授权没有关系,所有版本VS2019 16.3都没有预置对应模板。你看到的其他用户的VB SignalR项目都是通过基础项目改造得到的,没有专用的预置模板。

可用实现方案

方案1:通过命令行直接生成VB ASP.NET Core空项目

打开Visual Studio开发者命令提示符,执行以下命令即可生成指定名称的VB语言.NET 5空Web项目:
dotnet new web -lang VB -n 你的项目名称
生成后直接安装Microsoft.AspNetCore.SignalRNuGet包,参照C#项目的配置逻辑编写VB版的启动代码、Hub类即可。

方案2:手动改造VB控制台项目

  • 新建VB语言的.NET 5控制台项目
  • 右键项目选择编辑项目文件,将根节点的Sdk属性修改为Microsoft.NET.Sdk.Web,在属性组中添加<AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>,确认目标框架为net5.0
  • 安装Microsoft.AspNetCore.App元包和Microsoft.AspNetCore.SignalRNuGet包
  • 替换Program.vb的启动代码,添加Hub路由映射,新增自定义的Hub类即可完成项目搭建,示例代码如下:
Imports Microsoft.AspNetCore.Builder
Imports Microsoft.Extensions.DependencyInjection
Imports Microsoft.AspNetCore.SignalR

' 自定义Hub类示例
Public Class ChatHub
    Inherits Hub
    Public Async Function SendMessage(user As String, message As String) As Task
        Await Clients.All.SendAsync("ReceiveMessage", user, message)
    End Function
End Class

Module Program
    Sub Main(args As String())
        Dim builder = WebApplication.CreateBuilder(args)
        ' 注册SignalR服务
        builder.Services.AddSignalR()
        Dim app = builder.Build()
        ' 映射Hub路由
        app.MapHub(Of ChatHub)("/chathub")
        app.Run()
    End Sub
End Module

两种方案生成的项目运行逻辑和C#版SignalR项目完全一致,仅语法做对应转换即可。

内容的提问来源于stack exchange,提问作者Brobic Vripiat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 14:18:01