2017-04-21 3 views
0

저는 이제 ASP.NET Core를 배우고 있으며 단일 웹 응용 프로그램의 샘플을 만들려고합니다. MVC 및 Entity Framework를 사용하고 있습니다. 나는 두 가지 작업으로 HomeController를 가지고있다 - 여기에 내가 AngularJS와 함께보기를 반환하고있어 (내 SPA) 전체 IIS에서 호스팅 할 때 ASP.NET 핵심 응용 프로그램에서 데이터 형식 MSSQL 데이터베이스를 가져올 수없는 이유는 무엇입니까?

  • 홈/GetData의 < -

    • 홈/인덱스 < 나는 여기 JSON 데이터를 반환, HttpPost 액션과 기능을 배치 양식 MS SQL 서버

    웹 사이트를 파일 시스템 폴더에 게시했습니다. IIS Express에서 cmd를 실행하면 모든 것이 정상적으로 작동하지만 전체 IIS에서 호스트를 호스팅하려고하면보기가 제대로 리디렉션되지만 데이터 형식 DB를 사용할 수 없습니다.

    연결 문자열은 내가 여기 퍼트 : 가정으로

    public void ConfigureServices(IServiceCollection services) 
    { 
         var connection = @"MY CONNECTION STRING"; 
         services.AddDbContext<BloggingContext>(options => options.UseSqlServer(connection)); 
    } 
    

    내가 IIS 구성에 문제가 있습니다.

    조언이 있으십니까?

  • +0

    어떤 예외 및/또는 다른 메시지가 나옵니까? 예상되는 것은 무엇이며 실제로 무엇을합니까? – Caramiriel

    +0

    통합 보안을 사용하여 데이터베이스에 연결하는 경우 IIS에 구성된 사용자에게 올바른 사용 권한이 있는지 확인하십시오. –

    +0

    서버에서 자세한 로그를 사용하도록 설정하고 오류를 확인하면 문제가있는 곳을 격리 할 수 ​​있습니다. –

    답변

    0

    감사합니다. Kevin, 제 문제를 해결했습니다.

    내 문제는 연결 문자열에 있다고 생각합니다. 나는 SQL Server 인증과 연결하려고하지만 연결 문자열에 사용자 ID, 암호 및 불행히도 "통합 보안 = True"를 넣습니다.

    이 경우 Windows 인증이 사용되었으며 사용자 ID 및 암호는 무시되었습니다.

    연결 문자열에서 "Integrated Security = True"를 제거했습니다. 이제는 작품입니다.

    SQL Server에 인증이 혼합되어 있고 내 PC에 있습니다 ... 아마도 IIS Express를 실행할 때 계정 권한이있는 것일 수 있습니다. 따라서이 "잘못된"연결 문자열은 여전히 ​​정상적으로 작동합니다.