2017-02-13 15 views
2

私はSQliteデータベースを使用してASP.NETコアWebアプリケーションを使用しています。 これは完璧に動作しますが、今は青空でホストしたいと思います。 * .dbファイルをどこに置くべきですか?私はwwwrootフォルダがブラウズ可能なので最善の場所ではないと思います!AzureのASP.NetコアSqlite

以前は、このためにApp_Dataフォルダがありました。これらの種類のファイルは、ASP.NETコアにどこに置く必要がありますか?ヒントのための

おかげで...これを行うには

答えて

1

があることは、次の設定を使用する場合:データベースファイルが自動的にAzureの上のWebアプリケーションのルートフォルダに置かれ、私はwwwrootのに考えないとされます

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

を。これは私のためには完全に機能し、データベースファイルを作成する前にディレクトリが存在しないことを確認しなければならないという利点があります。

0

最も簡単な方法は、右のあなたのルートディレクトリにデータベースをアップロードすることです。これは、デフォルトで{WebsiteName.dill}またはWebApplication.dllがあるディレクトリを意味します。 Azureの場合、これはあなたのD:\home\site\wwwrootディレクトリになります(これはアプリケーション内の静的ファイルの場合はwwwrootフォルダではなく、azureのルートフォルダもwwwrootとなります)。次に、appsettings.Production.jsonファイルに接続文字列でこのデータベースに接続します。

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

。 それはトリックを行う必要があります。私が見つけただから何

+0

しかし、データファイルはwwwrootの外にあるべきではありませんか?私はそれがホストされる静的なファイルの場所であることを意味します。それはちょっと間違った場所IMOです。 – Matteo

+2

はい、完全にwwwrootフォルダの外に置くことができます。接続文字列に適切なディレクトリを使用するようにしてください。最も簡単な例を提供するために、wwwrootフォルダーに配置するように言いました。 –

+0

説明をありがとう... – Matteo

関連する問題