[asp.net-mvc] OwinStartup이 실행되지 않음

OwinStartup 구성 코드가 완벽하게 작동하고 작동이 멈췄습니다. 불행히도 나는 그것이 작동을 멈추기 위해 무엇을했는지 정확히 알지 못하고 그것을 알아내는 데 정말로 어려움을 겪고 있습니다.

기본 사항을 다룰 수 있는지 확인하기 위해

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

속성이 올바르게 할당되고 owin : AutomaticAppStartup에 대한 appSetting이 false로 설정되어 있지 않으므로 이전에 아무것도 없었기 때문에 하나를 안전하도록 설정했습니다.

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

또한 appSetting을 구체적으로 호출하려고 시도했습니다.

<add key="owin:appStartup" value="WebApplication.Startup" />

작동을 멈추기 전에 Microsoft.Owin.Security NuGet 패키지를 2.0.2로 업그레이드했기 때문에 패키지를 2.0.1로 되돌리려 고 시도했지만 아무런 변화가 없었습니다. 프로젝트에 WebActivator가 설치되어 있고 다른 것을 부트 스트랩하는 데 사용하고 있지만 새로운 WebApplication 템플릿에서 테스트했으며 그 원인으로 생각하지 않습니다.

또한 새 항목 추가의 OWIN 시작 클래스 유형을 사용하여 시작 클래스를 제거하고 Visual Studio를 사용하여 새 클래스를 추가하려고 시도했지만 호출되지 않았습니다. 다음으로 두 개 이상의 OwinStartup 속성이 정의되어 있으면 예외가 발생한다는 것을 알고 있기 때문에 두 번째 Startup 클래스를 추가하려고 시도했지만 예외는 발생하지 않습니다.

무엇을 시도해야할지 모르겠습니다. 이견있는 사람?

최신 정보

사용하지 않은 참조를 제거하는 데 Resharper가 Microsoft.Owin.Host.SystemWeb에 대한 참조를 제거했음을 알 수 있습니다.



답변

Microsoft.Owin.Host.SystemWeb프로젝트에 패키지를 설치했는지 확인하십시오 . 이 패키지는 IIS 호스팅 응용 프로그램에서 시작 감지에 필요합니다. 자세한 내용은 이 기사를 참조 하십시오 .


답변

이전 MVC 버전에서 업그레이드 한 경우

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

당신의 web.config. 시작 로직 호출을 억제합니다.

대신에 그것을 바꾸십시오 true

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

나는 당신이 이미 이것을 언급했지만 때로는 사람들 (나 같은 사람들)이 전체 질문을 읽지 않고 대답으로 뛰어 넘습니다 …

줄 어딘가에-MVC 5로 업그레이드했을 때 이것이 추가되어 오늘까지는 보지 못했습니다.


답변

논의 된 원래 문제에 대한 대안 적 답변-Owin은 “발사하지 않음”. 제 경우에는 중단 점을 설정할 수 없어서 발사되지 않았다고 생각하면서 몇 시간을 보냈습니다.

Visual Studio에서 OWIN 시작을 디버깅하는 경우

  • IIS Express-OWIN 시작 코드에서 “F5″를 실행하면

  • IIS- “F5” 실행 하면 OWIN (및 global.asax) 코드가로드 될 때까지 중단 되지 않습니다 . W3P.exe에 연결하면 들어갈 수 있습니다.


답변

Startup클래스 의 코드를 디버깅하는 데 문제가 있다면 이 문제가 있거나 생각했습니다. 코드가 실행되었지만 디버거가 연결되기 전에 발생하므로 코드에 중단 점을 설정하고 무슨 일이 일어나고 있는지 확인할 수 없습니다.

클래스 의 Configuration메소드 에서 예외를 발생시켜이를 증명할 수 있습니다 Startup.


답변

디버깅 팁

디버깅이 작동하지 않으면 IIS Express를 사용하거나 로컬 IIS에 대해 아래 방법을 시도하십시오.

로컬 IIS 사용

어떤 이유로이 방법을 사용하면이 방법을 디버깅 할 수 있습니다.

  1. 웹 페이지 요청
  2. w3wp.exe 프로세스에 연결
  3. web.config 파일을 터치하십시오.
  4. 웹 페이지 요청

추가 팁

어쩌면 이렇게하면 캐시가 플러시됩니다.

  1. web.config에서 optimizeCompilations 속성을 false 값으로 추가하십시오.

    <compilation debug = “true”… optimizeCompilations = “false”>

  2. 사이트 운영

  3. web.config에서 변경 사항을 취소하십시오.

답변

나는 이것과 비슷한 문제가 있었고 임시 ASP.NET 파일을 지우면 문제가 해결되었습니다. 이것이 누군가를 돕기를 바랍니다.


답변

나는 같은 문제가 있었다. Microsoft.Owin.Host.SystemWeb 패키지가 설치되었지만 설치 중에 NuGet이 어떤 이유로 dll을 참조로 추가 할 수 없습니다. 프로젝트에 해당 참조가 있는지 확인하십시오. 그렇지 않은 경우 다시 설치하려고 시도 할 수 있습니다.

update-package Microsoft.Owin.Host.SystemWeb -reinstall

다시 설치할 때 아래와 같은 오류가 발생했지만 어떻게 든 작동했습니다.

시스템 호출에 실패했습니다. (HRESULT 예외 : 0x80010100 (RPC_E_SYS_CALL_FAILED))