Praeitoje dalyje parodžiau kaip sukonfigūruoti nuolatinį diegimą į Windows Azure Web Sites iš GitHub ir CodePlex. Šiandien aptarsime Windows Azure Web Sites konfigūracijos valdymą.

.NET Framework konfigūracijos valdymui turi daugeliui gerai žinomą mechanizmą: app.config ir web.config failus, o tiksliau dvi skiltis: connectionStrings ir appSettings. Kaip seka iš pavadinimo, viena skirta prisijungimo prie duomenų bazių valdymui, o kita – bendro pobūdžio nustatymų saugojimui. Kadangi programavimo aplinkos nustatymai skiriasi nuo produkcinės aplinkos nustatymų, egzistuoja keli būdai kaip transformuoti app/web.config failus diegimo metu. Ko gero seniausias būdas – MSBuild užduotis XmlMassUpdate, kuri įeina į MSBuild Community Task projektą. Kitas būdas – web.config transformacija Visual Studio pagalba arba app.config transformacija SlowCheetah priedo pagalba.

Dirbant su Windows Azure Web Sites konfigūracijos valdymui jus galite naudoti standartinį web.config transformacijos būdą, kuris veikia net darant diegimą iš Git! Bet jis turi vieną trūkumą: jeigu saugote savo kodą GitHub ar panašioje atviro kodo talpinimo erdvėje, viešas produkcinės aplinkos nustatymų saugojimas nėra geriausia mintis. Šiai problemai išspręsti, Windows Azure Web Sites turi galimybę saito konfigūracijos skiltyje nurodyti norimus appSettings ir connectionStrings nustatymus:

blog-1

Svarbu atkreipti dėmesį į tai, kad konfigūracijos nustatymai, kuriuos padarėte tiesiai Windows Azure Web Sites portale, neįsirašo į jūsų web.config failą, o tiesiog traktuojami aukštesniu prioritetu Web aplikacijos vykdymo metu. Kitaip tariant, jeigu jūsų web.config appSettings skiltyje yra nustatymas IsFeatureXEnable=true, o Windows Azure Web Sites nurodėte IsFeatureXEnable=false, ConfigurationManager.AppSettings["IsFeatureXEnabled"] grąžins false.

Tiek šiam kartui, kitoje dalyje aptarsime kaip galima plėsti (angl. scale) Windows Azure Web Sites.

Patiko (0)

Rodyk draugams