2012-10-23 24 views
8

Cercare aiuto da chiunque abbia lavorato con SlowCheetah per trasformare i file di configurazione in un progetto Web. Stiamo scoprendo che i file di configurazione parziale a cui si fa riferimento da web.config non vengono trasformati.I file di configurazione parziale collegati a un web.config tramite configSource possono essere trasformati in un progetto Web?

Per esempio, abbiamo incluso i riferimenti ai file di configurazione parziali AppSettings.config e ConnectionsString.config nel web.config in questo modo:

</system.web> 
    <connectionStrings configSource ="ConnectionsString.config"></connectionStrings> 
    <appSettings configSource ="AppSettings.config"></appSettings> 
</configuration> 

e poi nel AppSettings.config abbiamo solo la sezione AppSettings in questo modo:

<appSettings> 
    <add key="LostPasswordBCC" value="[email protected]" /> 
</appSettings> 

e, infine, nel file AppSettings.Debug.config trasformare abbiamo alcune aggiunte:

<?xml version="1.0" encoding="utf-8" ?> 
<!-- For more information on using transformations 
    see the web.config examples at http://go.microsoft.com/fwlink/?LinkId=214134. --> 
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform"> 
    <appSettings > 
    <add key="Release" value="Something" xdt:Transform="Insert" /> 
    </appSettings> 
</configuration> 

Ovviamente quanto sopra è solo un test per vedere la trasformazione, ma quello che stiamo scoprendo è che nel tentativo di visualizzare in anteprima la trasformazione tutto ciò che otteniamo è un errore "Si è verificato un errore durante l'elaborazione della trasformazione." Anche il tentativo di pubblicazione fallisce.

Se rendiamo i file di configurazione xml completamente formati e non referenziati da web.config, la trasformazione sembra funzionare correttamente, ma cercavamo di condividere questi file su più progetti.

Qualcuno sa se esiste una soluzione alternativa in cui è possibile fare riferimento a configurazioni parziali da web.config e anche alle trasformazioni di tali file parziali? Abbiamo a che fare con il codice legacy con un numero elevato di file di configurazione in più progetti Web che tentano di consolidare, quindi la necessità di collegarsi dalla configurazione Web per separare i file condivisi.

+0

Sareste in grado di fornire un progetto di esempio che potrei dare un'occhiata a? –

+0

Sì, posso comprimere tutto il contenuto del progetto di test, è solo intorno ai 2 mb. Qual è il modo migliore per inviarti una copia? –

+0

Puoi scrivermi a sayedha (at) microsoftDOTcom –

risposta

4

Il problema è stato risolto, si è verificato dopo l'aiuto di Sayed, abbiamo stabilito che nei nostri sforzi per comprendere il processo di trasformazione di configurazione con un progetto Web abbiamo alterato il formato del file di configurazione della trasformazione. Con i file di configurazione appena creati siamo riusciti a far funzionare le trasformazioni usando SlowCheetah.

Questo ci ha permesso di passare al problema reale di cui avevamo bisogno di indirizzare il quale volevamo trasformare le configurazioni di progetto diverse da web.config usando i profili di pubblicazione di Visual Studio 2012. Questo non ha funzionato in origine, ma ancora una volta Sayed ci ha aiutato e fornito una nuova copia di SlowCheetah che ha permesso che funzionasse.

Sotto è un collegamento alla nuova versione del SlowCheetah con la correzione: https://github.com/sayedihashimi/slow-cheetah/issues/46

Molto grazie per tutto il vostro tempo e la pazienza Sayed.