programing

ASP.NET Web API - Startup.cs 이 존재하지 않습니다.

abcjava 2023. 6. 10. 07:56
반응형

ASP.NET Web API - Startup.cs 이 존재하지 않습니다.

Startup.cs 클래스를 포함하지 않는 ASP.NET Web API 솔루션이 있습니다.MVC 솔루션으로 솔루션이 만들어지지 않았기 때문인 것 같습니다.

시작에 대한 모든 코드는 아래와 같이 Global.asax.cs 파일에 정의되어 있습니다.

public class Global : HttpApplication
{
    void Application_Start(object sender, EventArgs e)
    {
        // Code that runs on application startup
        AreaRegistration.RegisterAllAreas();
        GlobalConfiguration.Configure(WebApiConfig.Register);
        RouteConfig.RegisterRoutes(RouteTable.Routes);
    }
}

하지만 이제 저는 OAuth에 대한 지원을 받고 싶습니다. 제가 찾은 모든 문서는 다음 클래스의 Startup.cs 을 기반으로 합니다.

public partial class Startup
{
    public void Configuration(IAppBuilder app)
    {
        ConfigureAuth(app);
    }
}

이 새로운 클래스를 내 솔루션에 추가하면 솔루션이 계속 작동할 수 있습니까?

Global.asax.cs 클래스와 충돌이 있습니까?

편집: Startup.cs 클래스를 추가한 후 추가한 중단점을 누를 수 없습니다...

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Microsoft.Owin;
using Owin;

[assembly: OwinStartup(typeof(MyGame.Startup))]

namespace MyGame
{
    public partial class Startup
    {
        public void Configuration(IAppBuilder app)
        {
            ConfigureAuth(app);
        }
    }
}

무슨 일인지 알아요?

Owin 패키지를 설치한 경우 다음을 사용하여 간단히 시작 클래스를 만들 수 있습니다.

여기에 이미지 설명 입력

Startup.cs 은 OWIN 인증 패키지의 일부입니다.패키지가 NuGet을 통해 추가되지 않으면 작동할 것이라고 장담할 수 없습니다.하지만 이 답변으로 판단하면 환경에 따라 작동할 수도 있습니다.

https://stackoverflow.com/a/24678109/6442626

단답:마이크로소프트를 설치한 경우.오윈. 보안.NuGet의 OAuth, 그것은 좋을 것입니다.그렇지 않으면 설치해야 합니다.

업데이트: 시작 시 MVC가 구성 방법을 호출하도록 하려면 Microsoft도 설치해야 합니다.오윈. 진행자.NuGet의 시스템 웹 패키지입니다.web.config를 사용하여 특별히 변경해야 할 사항은 없습니다. IIS가 자동으로 Owin 호스트를 검색하여 로드합니다.

자신의 스타트업 클래스를 추가할 수 있지만 Owin이 이 클래스를 인식하고 있는지 확인해야 합니다.여러 가지 방법이 있지만 시작 클래스를 사용하려면 OwinStartup 특성을 사용해야 합니다.

예:

[assembly: OwinStartup(typeof(MyNamespace.MyStartupClass))]

(루트 폴더의) Web.config에서 이 줄을 제거할 때까지 내 Startup.cs 이 실행되지 않음

<add key="owin:AutomaticAppStartup" value="false" /> 

네. 먼저 다음 줄을 제거해야 합니다.web.config.

<add key="owin:AutomaticAppStartup" value="false" />

그래야 메소드를 호출합니다.startup.cs.

언급URL : https://stackoverflow.com/questions/43076150/asp-net-web-api-startup-cs-doesnt-exist

반응형