2016-06-13 20 views
10

Possiedo un sito Web in esecuzione su Servizi app di Azure. Ha un WebJob che distribuisce con esso e quindi viene inserito nella sua cartella App_data una volta distribuito.Azure WebJob guarda l'app.config una volta distribuito

Se si esegue il FTP alla cartella wwwroot/app_data del mio sito una volta distribuito, il file app.config non ha nessuna delle impostazioni configurate che ho impostato in "Blade impostazioni applicazione" nel portale di Azure. Tuttavia, le impostazioni sono cambiate nel mio web.config per il sito web.

La cosa più curiosa è che quando eseguo il WebJob, l'output del registro indica che vengono utilizzate le impostazioni corrette !!

Così come per il mio titolo, il WebJob utilizza il file App.Settings una volta distribuito o utilizza una sorta di copia in-memory delle impostazioni dell'app dal portale azzurro oppure utilizza ciò che è nel web.config del sito web?

Solo per pre-EMT una possibile domanda, so che l'app.settings viene rinominato per myappname.exe.config

risposta

11

Ecco come funziona:

  • Azure non viene eseguito il tuo WebJob sul posto, ma invece lo copia in una cartella temporanea (per evitare di bloccarlo sul posto quando gira).
  • Come parte di questo processo di copia, le impostazioni dell'app vengono trasformate nei file temporanei. Ecco perché non vedi le modifiche nel file di configurazione.
  • Azure ascolta le modifiche ai file nei file WebJob, quindi se si modifica il file di configurazione, Azure copia/trasforma nuovamente i file e riavvia WebJob.
+0

Awesome !! Grazie per quello! –

+1

Semplicemente curioso, fa la stessa cosa per i siti, o corrono dove li vediamo nell'FTP? –

+0

Inoltre, questo significa che oltre alle impostazioni dell'app e alle stringhe di connessione, non è possibile modificare nulla in app.config dopo la distribuzione? –

1

Mark Seeman elabora questo:

Per quanto posso dire , tenta di leggere le impostazioni di configurazione in questo ordine prioritario:

1. Cercare di trovare il valore di configurazione nella configurazione online del sito Web> (vedere sotto).

2. Cercare di trovare il valore di configurazione nel file .cscfg.

3. Cercare di trovare il valore di configurazione nel file app.config o web.config.

(Leggi tutta la ricerca qui: http://blog.ploeh.dk/2014/05/16/configuring-azure-web-jobs/)

+2

Per Webjob , Non penso che guarderà il file .cscfg perché webjobs non viene eseguito in un servizio cloud ma in una webapp. Quindi penso che guarderà solo le impostazioni del portale, quindi l'app.config – Thomas

Problemi correlati