C# ASP.NET核心Don';没有app.UseEndpoints()方法
现在我正在学习ASP.NET核心,在一些指南中我看到了app.UseEndpoints()方法 但当我创建ASP NET核心项目时,我只在StartUp.cs中看到app.RunC# ASP.NET核心Don';没有app.UseEndpoints()方法,c#,asp.net,asp.net-core,signalr,C#,Asp.net,Asp.net Core,Signalr,现在我正在学习ASP.NET核心,在一些指南中我看到了app.UseEndpoints()方法 但当我创建ASP NET核心项目时,我只在StartUp.cs中看到app.Run 所以我需要为此安装一些实用程序,还是要删除UseEndPoints 我怎样才能实现这个方法 app.UseEndpoints(endpoints=>{endpoints.MapHub(“/chat”);}) 如果您使用的是.NET Core 3.1版本,则需要确保: 使用Microsoft.AspNetCore.Bui
app.UseEndpoints(endpoints=>{endpoints.MapHub(“/chat”);})代码>
如果您使用的是.NET Core 3.1版本,则需要确保:
使用Microsoft.AspNetCore.Builder代码>
在文件中,您需要(直接或间接)引用Microsoft.AspNetCore.Routing
程序集。如果您正在学习,最好从当前的.NET Core版本开始,即3.1版。2.1根本没有端点路由,端点路由的工作从2.2开始,但我认为它主要是在幕后进行的,不像UseEndpoints()
那样暴露于用户代码。在3.1中,Sean的答案适用-您通常只需在csproj中指定
,即可获得正确的NuGet include。如果您使用的是Net Core 2.1,则必须以这种方式进行配置:
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using SignalRChat.Hubs;
namespace SignalRChat
{
public class Startup
{
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
public IConfiguration Configuration { get; }
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
services.AddSignalR();
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
app.UseSignalR(routes =>
{
routes.MapHub<ChatHub>("/chat");
});
app.UseMvc();
}
}
}
见文件:
您使用的是哪个.net core版本?您可以在这里找到答案:我使用的是.net core 2.1,我让生成器在project中使用,但它不起作用
app.UseEndpoints(endpoints =>
{
endpoints.MapHub<ChatHub>("/chat");
});