首页 > 解决方案 > 在 .Net Core 类库中添加启动类

问题描述

我正在尝试在新的 .Net 核心类库项目中添加 OWIN 启动类。我已经安装了包 Microsoft.AspNetCore.Owin 包。但我仍然没有在“添加新项目”向导中看到创建 OWIN 启动类的选项。它以前曾在.Net 类库中。.Net Core 类库有什么不同吗?

我基本上想为我的 SingalR 集线器创建一个单独的项目,并通过引用它从我想要的任何地方使用它。

标签: c#asp.net-coresignalrsignalr-hub

解决方案


这与 Visual Studio 的工具有关。当您处理 Web 项目时,Visual Studio 会识别这一点并在“添加新项向导”中显示 Web 选项。由于您在类库项目中工作,Visual Studio 认为您不需要基于 Web 的选项,因此不提供它。幸运的是,您想要的启动类是一个带有一些约定的普通类。您应该能够将一个名为 startup 的类添加到您的类库项目中,并为其提供以下定义以获得您想要的:

using System;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;

namespace MyClassLibrary
{
    public class Startup
    {
        public void ConfigureServices(IServiceCollection services)
        {
        }

        public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
        {
        }
    }
}

推荐阅读