2015-07-23 13 views
11

Ho provato l'app ASP.NET5 MVC6. Nella versione precedente, c'era una directory App_Data. Ho usato questa cartella per archiviare i log degli errori. Ma non è stato trovato nell'ultima versione. Qualsiasi aiuto?Directory App_Data in ASP.NET5 MVC6

risposta

12

Credo che mettere App_Data sotto wwwroot è una cattiva idea. Con asp.net 5 quando pubblichiamo/distribuiamo otteniamo 2 cartelle approot e wwwroot. Qualsiasi file che non verrà servito da richieste http non dovrebbe vivere sotto wwwroot. Sarebbe meglio per le cose che in precedenza sarebbero passate nella cartella App_Data per vivere da qualche parte sotto l'approvazione invece. Questo related question of how to access files from approot should be of help

+4

tenere a mente che 'dominio di applicazione .CurrentDomain.GetData ("DataDirectory") 'restituirà comunque' wwwroot \ App_Data' a meno che non lo si cambi – jltrem

10

La directory App_Data può ancora essere utilizzata in ASP.NET 5, ma non è stata creata per impostazione predefinita.

Creazione sotto wwwroot. Questo è il percorso restituito da AppDomain.CurrentDomain.GetData("DataDirectory").ToString()

Se si desidera utilizzare un DataDirectory diverso allora si dovrebbe chiamare SetData:

public Startup(IHostingEnvironment env, IApplicationEnvironment appEnv) 
    { 
    string baseDir = appEnv.ApplicationBasePath; 
    AppDomain.CurrentDomain.SetData("DataDirectory", Path.Combine(baseDir, "myAppData")); 
4

Questo funziona per ASP.NET MVC Core 2

public void Configure(IApplicationBuilder app, IHostingEnvironment env) 
{ 
// Use this code if you want the App_Data folder to be in wwwroot 
//string baseDir = env.WebRootPath; 

// Use this if you want App_Data off your project root folder 
string baseDir = env.ContentRootPath; 

AppDomain.CurrentDomain.SetData("DataDirectory", System.IO.Path.Combine(baseDir, "App_Data")); 
} 

// Inserire il codice in cui è necessario per ottenere la cartella App_Data

string dataDir = AppDomain.CurrentDomain.GetData("DataDirectory").ToString(); 
Problemi correlati