Rövid útmutató: Azure Functions-alkalmazás létrehozása Azure-alkalmazás konfigurációval
Ebben a rövid útmutatóban a Azure-alkalmazás Configuration szolgáltatást egy Azure Functions-alkalmazásba építi be, hogy központosítsa az összes alkalmazásbeállítás tárolását és kezelését a kódtól elkülönítve.
Előfeltételek
- Egy Azure-fiók, aktív előfizetéssel. Hozzon létre egyet ingyen.
- Alkalmazáskonfigurációs áruház. Hozzon létre egy áruházat.
- Visual Studio az Azure fejlesztési számítási feladatával.
- Azure Functions-eszközök, ha még nincs telepítve a Visual Studióval.
Kulcs-érték hozzáadása
Adja hozzá a következő kulcsértéket az Alkalmazáskonfigurációs áruházhoz, és hagyja meg a címke és a tartalomtípus alapértelmezett értékeit. Ha többet szeretne tudni arról, hogyan adhat hozzá kulcsértékeket egy áruházhoz az Azure Portal vagy a parancssori felület használatával, lépjen a Kulcs-érték létrehozása elemre.
Kulcs | Érték |
---|---|
TestApp:Gépház:Message | Adatok Azure-alkalmazás konfigurációjából |
Függvényalkalmazás létrehozása
A Visual Studio Azure Functions-projektsablonja létrehoz egy C#-osztálytárprojektet, amelyet közzétehet egy függvényalkalmazásban az Azure-ban. A függvényalkalmazásokkal logikai egységként csoportosíthatja a függvényeket az erőforrások egyszerűbb kezelése, üzembe helyezése, skálázása és megosztása érdekében.
A Visual Studio menüjében válassza az Új>projekt fájlja>lehetőséget.
Új projekt létrehozásakor írja be a függvényeket a keresőmezőbe, válassza ki az Azure Functions-sablont, majd válassza a Tovább gombot.
Az új projekt konfigurálása területen adja meg a projekt projektnevét , majd válassza a Létrehozás lehetőséget. A függvényalkalmazás nevének egy C#-névtérként is érvényesnek kell lennie, ezért ne használjon aláhúzásjeleket, kötőjeleket vagy más nem alfanumerikus karaktereket.
Az új Azure Functions-alkalmazásbeállítások létrehozásához használja az alábbi táblázatban szereplő értékeket:
Beállítás Érték Leírás .NET-verzió .NET 6 Izolált Ez az érték létrehoz egy függvényprojektet, amely egy izolált feldolgozófolyamatban fut. Az izolált feldolgozói folyamat támogatja a .NET egyéb nem LTS-verzióját, és .NET-keretrendszer is. További információkért tekintse meg az Azure Functions futtatókörnyezeti verzióinak áttekintését. Függvénysablon HTTP-eseményindító Ez az érték egy HTTP-kérés által aktivált függvényt hoz létre. Tárfiók (AzureWebJobsStorage) Tárolóemulátor Mivel az Azure-ban egy függvényalkalmazáshoz tárfiókra van szükség, a rendszer hozzárendel vagy létrehoz egyet, amikor közzéteszi a projektet az Azure-ban. A HTTP-eseményindítók nem használnak Azure Storage-fiókot kapcsolati sztring; minden más eseményindító-típushoz érvényes Azure Storage-fiók kapcsolati sztring szükséges. Engedélyszint Névtelen A létrehozott függvényt bármely ügyfél elindíthatja, kulcs megadása nélkül. Ez az engedélyezési beállítás megkönnyíti az új függvény tesztelését. További információ a kulcsokról és az engedélyezésről: Engedélyezési kulcsok , HTTP- és webhookkötések. Győződjön meg arról, hogy az engedélyezési szintet névtelenre állítja. Ha a függvény alapértelmezett szintjét választja, be kell mutatnia a függvénykulcsot a függvényvégpont eléréséhez szükséges kérelmekben.
Válassza a Létrehozás lehetőséget a függvényprojekt és a HTTP-eseményindító függvény létrehozásához.
Csatlakozás alkalmazáskonfigurációs áruházba
Ez a projekt függőséginjektálást fog használni a .NET Azure Functionsben, és további konfigurációs forrásként Azure-alkalmazás konfigurációt ad hozzá. Az Azure Functions támogatja a folyamaton belüli vagy izolált folyamatok futtatását. Válassza ki a követelményeknek megfelelőt.
Kattintson a jobb gombbal a projektre, és válassza a NuGet-csomagok kezelése lehetőséget. A Tallózás lapon keressen és adjon hozzá következő NuGet-csomagokat a projekthez.
- Microsoft.Extensions.Configuration.AzureAppConfiguration 4.1.0-s vagy újabb verzió
- Microsoft.Azure.Functions.Extensions 1.1.0-s vagy újabb verzió
Adjon hozzá kódot Azure-alkalmazás konfigurációhoz való csatlakozáshoz.
Adjon hozzá egy új fájlt Startup.cs a következő kóddal. Definiál egy osztályt, amely
Startup
azFunctionsStartup
absztrakt osztályt implementálja. A rendszer egy szerelvényattribútumot használ az Azure Functions indításakor használt típusnév megadásához.A
ConfigureAppConfiguration
metódus felül van bírálva, és Azure-alkalmazás konfigurációszolgáltató további konfigurációs forrásként lesz hozzáadva a hívássalAddAzureAppConfiguration()
. AConfigure
metódus üres marad, mivel jelenleg nem kell regisztrálnia semmilyen szolgáltatást.using System; using Microsoft.Azure.Functions.Extensions.DependencyInjection; using Microsoft.Extensions.Configuration; [assembly: FunctionsStartup(typeof(FunctionApp.Startup))] namespace FunctionApp { class Startup : FunctionsStartup { public override void ConfigureAppConfiguration(IFunctionsConfigurationBuilder builder) { string cs = Environment.GetEnvironmentVariable("ConnectionString"); builder.ConfigurationBuilder.AddAzureAppConfiguration(cs); } public override void Configure(IFunctionsHostBuilder builder) { } } }
Nyissa meg a Function1.cs, és adja hozzá a következő névteret, ha még nincs jelen.
using Microsoft.Extensions.Configuration;
Adja hozzá vagy frissítse a függőséginjektáláson keresztüli
IConfiguration
példány beszerzéséhez használt konstruktort.private readonly IConfiguration _configuration; public Function1(IConfiguration configuration) { _configuration = configuration; }
Frissítse a metódust,
Run
hogy beolvassa az értékeket a konfigurációból.[FunctionName("Function1")] public async Task<IActionResult> Run( [HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)] HttpRequest req, ILogger log) { log.LogInformation("C# HTTP trigger function processed a request."); // Read configuration data string keyName = "TestApp:Settings:Message"; string message = _configuration[keyName]; return message != null ? (ActionResult)new OkObjectResult(message) : new BadRequestObjectResult($"Please create a key-value with the key '{keyName}' in App Configuration."); }
Feljegyzés
Az
Function1
osztály és aRun
metódus nem lehet statikus. Távolítsa el astatic
módosítót, ha az automatikusan lett létrehozva.
A függvény helyi tesztelése
Állítson be egy Csatlakozás ionString nevű környezeti változót, és állítsa be az App Configuration Store hozzáférési kulcsára. Ha a Windows parancssorát használja, futtassa a következő parancsot, és indítsa újra a parancssort a módosítás érvénybe lépésének engedélyezéséhez:
setx ConnectionString "connection-string-of-your-app-configuration-store"
Windows PowerShell használata esetén futtassa a következő parancsot:
$Env:ConnectionString = "connection-string-of-your-app-configuration-store"
MacOS vagy Linux használata esetén futtassa a következő parancsot:
export ConnectionString='connection-string-of-your-app-configuration-store'
Nyomja le az F5 billentyűt a függvény teszteléséhez. Ha a rendszer kéri, fogadja el a Visual Studiótól az Azure Functions Core (CLI) eszközeinek letöltésére és telepítésére vonatkozó kérést. Előfordulhat, hogy engedélyeznie kell egy tűzfalkivételt is, hogy az eszközök kezelni tudják a HTTP-kéréseket.
Másolja a függvény URL-címét az Azure-függvény futtatókörnyezetéből.
Illessze be a HTTP-kérelem URL-címét a böngésző címsorába. Az alábbi képen a böngészőben a függvény által visszaadott helyi GET kérésre adott válasz látható.
Az erőforrások eltávolítása
Ha nem szeretné folytatni a cikkben létrehozott erőforrások használatát, törölje az itt létrehozott erőforráscsoportot a díjak elkerülése érdekében.
Fontos
Az erőforráscsoport törlése nem vonható vissza. Az erőforráscsoport és a benne lévő összes erőforrás véglegesen törlődik. Győződjön meg arról, hogy nem véletlenül törli a rossz erőforráscsoportot vagy erőforrásokat. Ha a cikk erőforrásait olyan erőforráscsoporton belül hozta létre, amely más megtartani kívánt erőforrásokat tartalmaz, törölje az egyes erőforrásokat a megfelelő panelről az erőforráscsoport törlése helyett.
- Jelentkezzen be az Azure Portalra, és válassza ki az Erőforráscsoportokat.
- A Szűrés név szerint mezőbe írja be az erőforráscsoport nevét.
- Az eredménylistában válassza ki az erőforráscsoport nevét az áttekintés megtekintéséhez.
- Válassza az Erőforráscsoport törlése elemet.
- A rendszer az erőforráscsoport törlésének megerősítését kéri. Adja meg a megerősítéshez az erőforráscsoport nevét, és válassza a Törlés lehetőséget.
Néhány pillanat múlva az erőforráscsoport és annak összes erőforrása törlődik.
Következő lépések
Ebben a rövid útmutatóban létrehozott egy új Alkalmazáskonfigurációs áruházat, amelyet egy Azure Functions-alkalmazással használt az alkalmazáskonfigurációs szolgáltatón keresztül. Ha szeretné megtudni, hogyan frissítheti az Azure Functions-alkalmazást a konfiguráció dinamikus frissítésére, folytassa a következő oktatóanyagban.
Ha szeretné megtudni, hogyan használhat azure-beli felügyelt identitást az alkalmazáskonfigurációhoz való hozzáférés gördülékenyebbé tételéhez, folytassa a következő oktatóanyagban.