0

기존 SQL Server 2016 데이터베이스를 사용하여 모델을 만들려고합니다. 나는 모든 Nuget 패키지를 추가 한ASP.Net 코어에서 Entity Framework Core를 사용하여 스캐 폴딩 할 때 오류가 발생했습니다.

Working directory: E:\Personal\TE\VS Projects\EFGetStarted.AspNetCore.ExistingDb\src\EFGetStarted.AspNetCore.ExistingDb
Executing command: dotnet ef --configuration Debug --build-base-path .\bin\ dbcontext scaffold ''Server=techestatevm.southeastasia.cloudapp.azure.com;Database=Blogging;User Id=newuser;Password=pass;''
Microsoft.EntityFrameworkCore.SqlServer --verbose
At line:1 char:215
+ ... user;Password=pass;'' Microsoft.EntityFrameworkCore.SqlServer --verbo ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Unexpected token 'Microsoft.EntityFrameworkCore.SqlServer' in expression or statement.

:

PM> Scaffold-DbContext "'Server=techestatevm.southeastasia.cloudapp.azure.com;Database=Blogging;User Id=newuser;Password=pass;'" Microsoft.EntityFrameworkCore.SqlServer -verbose 

나는이 오류 : 문서에서와 같이 명령 프롬프트를 실행합니다. 참조 내 project.json이이 문서상의 문제처럼

{ 
    "dependencies": { 
    "Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore": "1.0.0-rc2-final", 
    "Microsoft.AspNetCore.Identity.EntityFrameworkCore": "1.0.0-rc2-final", 
    "Microsoft.AspNetCore.Server.IISIntegration": "1.0.0-rc2-final", 
    "Microsoft.AspNetCore.Server.Kestrel": "1.0.0-rc2-final", 
    "Microsoft.EntityFrameworkCore": "1.0.0-rc2-final", 
    "Microsoft.EntityFrameworkCore.InMemory": "1.0.0-rc2-final", 
    "Microsoft.EntityFrameworkCore.SqlServer": "1.0.0-rc2-final", 
    "Microsoft.EntityFrameworkCore.SqlServer.Design": "1.0.0-rc2-final", 
    "Microsoft.EntityFrameworkCore.Tools": "1.0.0-preview1-final", 
    "Microsoft.EntityFrameworkCore.Tools.Cli": "1.0.0-preview1-final", 
    "Microsoft.EntityFrameworkCore.Tools.Core": "1.0.0-rc2-final", 
    "Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore": "1.0.0-preview1-final" 
    }, 

    "tools": { 
    "Microsoft.EntityFrameworkCore.Tools": { 
     "version": "1.0.0-preview1-final", 
     "imports": [ 
     "portable-net45+win8+dnxcore50", 
     "portable-net45+win8" 
     ] 
    }, 
    "Microsoft.AspNetCore.Server.IISIntegration.Tools": { 
     "version": "1.0.0-preview1-final", 
     "imports": "portable-net45+win8+dnxcore50" 
    } 
    }, 

    "frameworks": { 
    "net452": { } 
    }, 

    "buildOptions": { 
    "emitEntryPoint": true, 
    "preserveCompilationContext": true 
    }, 

    "publishOptions": { 
    "include": [ 
     "wwwroot", 
     "web.config" 
    ] 
    }, 

    "scripts": { 
    "postpublish": [ "dotnet publish-iis --publish-folder %publish:OutputPath% --framework %publish:FullTargetFramework%" ] 
    } 
} 

답변

1

보인다. 이 문서에 언급 된 제안주의가 원인입니다. 바깥 쪽 큰 따옴표를 제거하면 문제가 해결되었습니다.

연결 문자열은 큰 따옴표로 묶여 있습니다 (큰 따옴표 안에 작은 따옴표 포함). RC2의 알려진 문제에 대한 해결 방법입니다.