2017-02-13 3 views
2

SQlite 데이터베이스를 사용하는 ASP.NET 핵심 웹 응용 프로그램이 있습니다. 이것은 완벽하지만 이제는 하늘빛으로 호스트하고 싶습니다. 내 * .db 파일은 어디에 두어야합니까? wwwroot 폴더가 탐색 할 수있는 가장 좋은 장소가 아닌 것 같습니다.Azure의 ASP.Net Core Sqlite

이 폴더에는 App_Data 폴더가 있어야합니다. 이러한 종류의 파일은 ASP.NET 코어에서 어디로 이동해야합니까? 힌트에 대한

감사합니다 ...

답변

1

는 그 다음 설정을 사용하는 경우 : 데이터베이스 파일이 자동 하늘빛에 웹 응용 프로그램의 루트 폴더에 배치하고 내가 wwwroot에로 생각하지됩니다

"ConnectionStrings": { 
    "DefaultConnection": "Data Source=.\\DbName.db" 
} 

을 . 이것은 완벽하게 작동하며 데이터베이스 파일을 만들기 전에 디렉토리가 존재하지 않는다는 장점이 있습니다.

0

루트 디렉토리의 데이터베이스 권리를 업로드하는 것이 작업을 수행하는 가장 쉬운 방법. 이는 기본적으로 {WebsiteName.dill} 또는 WebApplication.dll이있는 디렉토리를 의미합니다. Azure의 경우 이것은 D:\home\site\wwwroot 디렉토리가됩니다 (응용 프로그램의 정적 파일에는 wwwroot 폴더가 아니라 하늘색의 루트 폴더 인 wwwroot라고도 함). 그런 다음 appsettings.Production.json 파일에 연결 문자열을 사용하여이 데이터베이스에 연결합니다.

"ConnectionStrings": { 
    "DefaultConnection": "Data Source=<DATABASE_NAME>.db" 
    } 

. 그 트릭을해야합니다. 내가 발견 그래서

+0

그러나 데이터 파일이 wwwroot 외부에 있으면 안됩니까? 그게 정적 파일을 호스팅하는 곳이라는 뜻입니다. 그래서 그것은 다소 잘못된 곳입니다. – Matteo

+2

예, wwwroot 폴더 밖에 완전히 넣을 수 있습니다. 연결 문자열에 적절한 디렉토리를 사용해야합니다. 가장 쉬운 예제를 제공하기 위해 wwwroot 폴더에 넣으려고했습니다. –

+0

설명 주셔서 감사합니다 ... – Matteo

관련 문제