2017-10-17 10 views
2

Kestrel을 실행하려고하는 콘솔 응용 프로그램이 있습니다..NET Core Kestrel 응용 프로그램에 등록 된 서비스가 없습니다.

Unhandled Exception: System.InvalidOperationException: No service for type 'Microsoft.AspNetCore.Hosting.IStartup' has been registered. 

내 PROJ 파일은 다음과 같습니다 :

내가 그것을 나는 다음과 같은 예외가 얻을 실행할 때, 그러나

public class Program 
{ 
    public static void Main(string[] args) 
    { 
     BuildWebHost(args).Run(); 
    } 

    public static IWebHost BuildWebHost(string[] args) => 
     WebHost.CreateDefaultBuilder(args) 
      .UseStartup<Startup>() 
      .Build(); 
} 

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

    public void Configure(IApplicationBuilder app, IHostingEnvironment env) 
    { 
     if (env.IsDevelopment()) 
     { 
      app.UseDeveloperExceptionPage(); 
     } 

     app.Run(async (context) => 
     { 
      await context.Response.WriteAsync("Hello World!"); 
     }); 
    } 
} 

: 코드 파일은 모든 상용구 빈 ASP.Core 응용 프로그램에서 파일입니다

<Project Sdk="Microsoft.NET.Sdk"> 
    <PropertyGroup> 
    <OutputType>Exe</OutputType> 
    <TargetFramework>netcoreapp2.0</TargetFramework> 
    </PropertyGroup> 
    <ItemGroup> 
    <PackageReference Include="Microsoft.AspNetCore" Version="2.0.0" /> 
    <PackageReference Include="Microsoft.AspNetCore.Hosting" Version="2.0.0" /> 
    <PackageReference Include="Microsoft.AspNetCore.Server.Kestrel" version="2.0" /> 
    </ItemGroup> 
</Project> 
+0

앱을 어떻게 실행 했습니까? VS 2017 디버그 모드에서 코드를 테스트하고'dotnet app.dll '을 사용하여 두 경우 모두에서 작업했습니다. –

+0

@JawadAlShaikh 이전 CLI로 빌드되고 실행됩니다. 콘솔 응용 프로그램도 함께 만들었습니다.'dotnet new console'> – BanksySan

+0

종속성 문제를 해결하는 데 문제가 있다고 생각합니다. 새 콘솔 메소드를 테스트하고 가능한 경우 VS 2017을 시도 할 수 있습니까? –

답변

0

의견에서 언급했듯이 신고 된 문제를 재현 할 수 없습니다.

Reference에서 인용 아래 당신이 언급 한 System.InvalidOperationException: No service for type 'Microsoft.AspNetCore.Hosting.IStartup' has been registered. 예외에 대한 참조 :이 예외 더 IStartup 클래스가 없음을 명시 발생

그것 ASP.NET 핵심 구성 시스템.

저는 여기에있는 일에 익숙하지 않지만 구성이 잘못된 순서에있는 것 같습니다.