Udostępnij za pośrednictwem


Szybki start: tworzenie pierwszej funkcji języka C# na platformie Azure przy użyciu programu Visual Studio

Usługa Azure Functions umożliwia tworzenie lokalnych projektów funkcji języka C#, a następnie łatwe publikowanie tego projektu w celu uruchomienia w skalowalnym środowisku bezserwerowym na platformie Azure. Jeśli wolisz opracowywać aplikacje w języku C# lokalnie przy użyciu programu Visual Studio Code, zamiast tego należy rozważyć wersję opartą na programie Visual Studio Code tego artykułu.

Domyślnie w tym artykule przedstawiono sposób tworzenia funkcji języka C# uruchamianych na platformie .NET 8 w izolowanym procesie roboczym. Aplikacje funkcji uruchamiane w izolowanym procesie roboczym są obsługiwane we wszystkich wersjach platformy .NET obsługiwanych przez usługę Functions. Aby uzyskać więcej informacji, zobacz Obsługiwane wersje.

W tym artykule omówiono sposób wykonywania następujących zadań:

  • Użyj programu Visual Studio, aby utworzyć projekt biblioteki klas języka C#.
  • Utwórz funkcję, która odpowiada na żądania HTTP.
  • Uruchom kod lokalnie, aby zweryfikować zachowanie funkcji.
  • Wdrażanie projektu kodu w usłudze Azure Functions.

Ukończenie tego przewodnika Szybki start wiąże się z naliczeniem niewielkiej opłaty w wysokości kilku centów USD lub mniej na koncie platformy Azure.

W tym filmie wideo pokazano, jak utworzyć funkcję języka C# na platformie Azure.

Kroki opisane w filmie wideo zostały również opisane w poniższych sekcjach.

Wymagania wstępne

Tworzenie projektu aplikacji funkcji

Szablon projektu usługi Azure Functions w programie Visual Studio tworzy projekt biblioteki klas języka C#, który można opublikować w aplikacji funkcji na platformie Azure. Za pomocą aplikacji funkcji można grupować funkcje jako jednostkę logiczną, aby ułatwić zarządzanie, wdrażanie, skalowanie i udostępnianie zasobów.

  1. Z menu programu Visual Studio wybierz pozycję Plik>nowy>projekt.

  2. W obszarze Tworzenie nowego projektu wprowadź funkcje w polu wyszukiwania, wybierz szablon usługi Azure Functions , a następnie wybierz pozycję Dalej.

  3. W obszarze Konfigurowanie nowego projektu wprowadź nazwę projektu, a następnie wybierz pozycję Dalej. Nazwa aplikacji funkcji musi być prawidłową nazwą przestrzeni nazw C#, dlatego nie należy używać znaków podkreślenia, łączników ani znaków innych niż alfanumeryczne.

  4. W przypadku pozostałych dodatkowych ustawień informacji ,

    Ustawienie Wartość Opis
    Proces roboczy usługi Functions Izolowana platforma .NET 8.0 (obsługa długoterminowa) Funkcje działają na platformie .NET 8 w izolowanym procesie roboczym.
    Funkcja Wyzwalacz HTTP Ta wartość tworzy funkcję wyzwalaną przez żądanie HTTP.
    Używanie usługi Azurite na potrzeby konta magazynu środowiska uruchomieniowego (AzureWebJobsStorage) Włącz Ponieważ aplikacja funkcji na platformie Azure wymaga konta magazynu, jest przypisywana lub tworzona podczas publikowania projektu na platformie Azure. Wyzwalacz HTTP nie używa konta usługi Azure Storage parametry połączenia; wszystkie inne typy wyzwalaczy wymagają prawidłowego konta usługi Azure Storage parametry połączenia. Po wybraniu tej opcji jest używany emulator Azurite.
    Poziom autoryzacji Anonimowy Utworzona funkcja może zostać wyzwolona przez dowolnego klienta bez podawania klucza. To ustawienie autoryzacji ułatwia testowanie nowej funkcji. Aby uzyskać więcej informacji, zobacz Poziom autoryzacji.

    Zrzut ekranu przedstawiający ustawienia projektu usługi Azure Functions.

    Upewnij się, że ustawiono poziom autoryzacji na Anonimowy. Jeśli wybierzesz domyślny poziom funkcji, musisz przedstawić klucz funkcji w żądaniach uzyskania dostępu do punktu końcowego funkcji na platformie Azure.

  5. Wybierz pozycję Utwórz , aby utworzyć projekt funkcji i funkcję wyzwalacza HTTP.

Program Visual Studio tworzy projekt i klasę zawierającą standardowy kod dla typu funkcji wyzwalacza HTTP. Standardowy kod wysyła odpowiedź HTTP zawierającą wartość z treści żądania lub ciągu zapytania. Atrybut HttpTrigger określa, że funkcja jest wyzwalana przez żądanie HTTP.

Zmienianie nazwy funkcji

Atrybut Function metody ustawia nazwę funkcji, która domyślnie jest generowana jako Function1. Ponieważ narzędzia nie pozwalają zastąpić domyślnej nazwy funkcji podczas tworzenia projektu, pośmiń minutę, aby utworzyć lepszą nazwę klasy funkcji, pliku i metadanych.

  1. W Eksplorator plików kliknij prawym przyciskiem myszy plik Function1.cs i zmień jego nazwę na HttpExample.cs.

  2. W kodzie zmień nazwę klasy Function1 na HttpExample.

  3. W metodzie o nazwie Runzmień nazwę atrybutu Function metody na HttpExample.

Definicja funkcji powinna teraz wyglądać podobnie do następującego kodu:

[Function("HttpExample")]
public IActionResult Run([HttpTrigger(AuthorizationLevel.AuthLevelValue, "get", "post")] HttpRequest req)
{
    return new OkObjectResult("Welcome to Azure Functions!");
}

Po zmianie nazwy funkcji możesz ją przetestować na komputerze lokalnym.

Lokalne uruchamianie funkcji

Program Visual Studio integruje się z narzędziami Azure Functions Core Tools, dzięki czemu można testować funkcje lokalnie przy użyciu pełnego środowiska uruchomieniowego usługi Azure Functions.

  1. Aby uruchomić funkcję, naciśnij F5 w programie Visual Studio. Może być konieczne włączenie wyjątku zapory, aby narzędzia mogły obsługiwać żądania HTTP. Poziomy autoryzacji nigdy nie są wymuszane podczas lokalnego uruchamiania funkcji.

  2. Skopiuj adres URL funkcji z danych wyjściowych środowiska uruchomieniowego usługi Azure Functions.

    Lokalne środowisko uruchomieniowe platformy Azure

  3. Wklej adres URL żądania HTTP na pasku adresu przeglądarki i uruchom żądanie. Na poniższej ilustracji przedstawiono odpowiedź w przeglądarce na lokalne żądanie GET zwrócone przez funkcję:

    Odpowiedź hosta localhost funkcji wyświetlona w przeglądarce

  4. Aby zatrzymać debugowanie, naciśnij Shift+F5 w programie Visual Studio.

Gdy będziesz mieć pewność, że funkcja działa poprawnie na komputerze lokalnym, możesz opublikować projekt na platformie Azure.

Publikowanie projektu na platformie Azure

Program Visual Studio może opublikować projekt lokalny na platformie Azure. Przed opublikowaniem projektu musisz mieć aplikację funkcji w subskrypcji platformy Azure. Jeśli nie masz jeszcze aplikacji funkcji na platformie Azure, publikowanie w programie Visual Studio powoduje utworzenie aplikacji po raz pierwszy podczas publikowania projektu. W tym artykule utworzysz aplikację funkcji i powiązane zasoby platformy Azure.

  1. W Eksploratorze rozwiązań kliknij prawym przyciskiem myszy projekt i wybierz polecenie Opublikuj. W obszarze Cel wybierz pozycję Azure, a następnie wybierz pozycję Dalej.

    Zrzut ekranu przedstawiający okienko publikowania.

  2. W obszarze Określony element docelowy wybierz pozycję Aplikacja funkcji platformy Azure (Windows). Zostanie utworzona aplikacja funkcji działająca w systemie Windows. Wybierz Dalej.

    Zrzut ekranu przedstawiający okienko publikowania, które ma określony element docelowy.

  3. W wystąpieniu usługi Functions wybierz pozycję Utwórz nową funkcję platformy Azure.

    Zrzut ekranu przedstawiający tworzenie nowego wystąpienia aplikacji funkcji.

  4. Utwórz nowe wystąpienie przy użyciu wartości określonych w poniższej tabeli:

    Ustawienie Wartość Opis
    Nazwa/nazwisko Nazwa unikatowa w skali globalnej Unikatowa nazwa identyfikująca nową aplikację funkcji. Zaakceptuj tę nazwę lub wprowadź nową nazwę. Prawidłowe znaki to: a-z, 0-9i -.
    Subskrypcja Twoja subskrypcja Subskrypcja platformy Azure, która ma być używana. Zaakceptuj tę subskrypcję lub wybierz nową z listy rozwijanej.
    Grupa zasobów: Nazwa grupy zasobów Grupa zasobów, w której chcesz utworzyć aplikację funkcji. Wybierz pozycję Nowy , aby utworzyć nową grupę zasobów. Możesz również użyć istniejącej grupy zasobów z listy rozwijanej.
    Typ planu Zużycie Podczas publikowania projektu w aplikacji funkcji uruchamianej w planie Zużycie płacisz tylko za wykonania aplikacji funkcji. Inne plany hostingu generują wyższe koszty.
    Lokalizacja Lokalizacja usługi App Service Wybierz lokalizację w regionie świadczenia usługi Azure w pobliżu Ciebie lub innych usług, do których uzyskujesz dostęp do funkcji.
    Azure Storage Konto magazynu ogólnego przeznaczenia Środowisko uruchomieniowe usługi Functions wymaga konta magazynu platformy Azure. Wybierz pozycję Nowy , aby skonfigurować konto magazynu ogólnego przeznaczenia. Możesz również użyć istniejącego konta spełniającego wymagania dotyczące konta magazynu.
    Application Insights Wystąpienie usługi Application Insights Należy włączyć integrację aplikacja systemu Azure Insights dla aplikacji funkcji. Wybierz pozycję Nowy , aby utworzyć nowe wystąpienie w nowym lub istniejącym obszarze roboczym usługi Log Analytics. Możesz również użyć istniejącego wystąpienia.

    Zrzut ekranu przedstawiający okno dialogowe Tworzenie usługi App Service.

  5. Wybierz pozycję Utwórz , aby utworzyć aplikację funkcji i powiązane z nią zasoby na platformie Azure. Stan tworzenia zasobów jest wyświetlany w lewym dolnym rogu okna.

  6. W wystąpieniu usługi Functions upewnij się, że pole wyboru Uruchom z pliku pakietu jest zaznaczone. Aplikacja funkcji jest wdrażana przy użyciu funkcji Zip Deploy z włączonym trybem Run-From-Package . Zip Deploy to zalecana metoda wdrażania dla projektu funkcji w celu uzyskania lepszej wydajności.

    Zrzut ekranu przedstawiający okienko Kończenie tworzenia profilu.

  7. Wybierz pozycję Zakończ, a następnie w okienku Publikowanie wybierz pozycję Publikuj , aby wdrożyć pakiet zawierający pliki projektu w nowej aplikacji funkcji na platformie Azure.

    Po zakończeniu wdrażania główny adres URL aplikacji funkcji na platformie Azure jest wyświetlany na karcie Publikowanie .

  8. Na karcie Publikowanie w sekcji Hosting wybierz pozycję Otwórz w witrynie Azure Portal. Nowy zasób aplikacji funkcji platformy Azure zostanie otwarty w witrynie Azure Portal.

    Zrzut ekranu przedstawiający komunikat o powodzeniu publikowania.

Weryfikowanie funkcji na platformie Azure

  1. W witrynie Azure Portal powinna znajdować się strona Przegląd nowej aplikacji funkcji.

  2. W obszarze Funkcje wybierz nową funkcję o nazwie HttpExample, a następnie na stronie funkcji wybierz pozycję Pobierz adres URL funkcji, a następnie ikonę Kopiuj do schowka.

  3. Na pasku adresu w przeglądarce wklej właśnie skopiowany adres URL i uruchom żądanie.

    Adres URL, który wywołuje funkcję wyzwalacza HTTP, ma następujący format:

    https://<APP_NAME>.azurewebsites.net/api/HttpExample?name=Functions

  4. Przejdź do tego adresu URL i zobaczysz odpowiedź w przeglądarce na zdalne żądanie GET zwrócone przez funkcję, która wygląda jak w poniższym przykładzie:

    Odpowiedź funkcji wyświetlona w przeglądarce

Czyszczenie zasobów

Zasoby na platformie Azure dotyczą aplikacji funkcji, funkcji, kont magazynu i tak dalej. Są one grupowane w grupy zasobów i można usunąć wszystkie elementy w grupie, usuwając grupę.

Zasoby platformy Azure zostały utworzone w celu ukończenia tego przewodnika Szybki start. Za te zasoby może zostać naliczona opłata — zależy to od Twojego stanu konta i cennika usług. Inne przewodniki Szybki start w tej kolekcji bazują na tym przewodniku. Jeśli planujesz pracę z kolejnymi przewodnikami Szybki start, samouczkami lub z dowolną usługą utworzoną w tym przewodniku Szybki start, nie usuwaj zasobów.

Wykonaj poniższe kroki, aby usunąć aplikację funkcji i powiązane z nią zasoby, aby uniknąć ponoszenia dodatkowych kosztów.

  1. W oknie dialogowym Publikowanie programu Visual Studio w sekcji Hosting wybierz pozycję Otwórz w witrynie Azure Portal.

  2. Na stronie aplikacji funkcji wybierz kartę Przegląd , a następnie wybierz link w obszarze Grupa zasobów.

    Wybierz grupę zasobów, która ma zostać usunięta ze strony aplikacji funkcji

  3. Na stronie Grupa zasobów przejrzyj listę uwzględnionych zasobów i sprawdź, czy są to te, które chcesz usunąć.

  4. Wybierz pozycję Usuń grupę zasobów, a następnie postępuj zgodnie z instrukcjami.

    Usuwanie może potrwać kilka minut. Po jego zakończeniu przez kilka sekund będzie widoczne powiadomienie. Możesz również wybrać ikonę dzwonka w górnej części strony, aby wyświetlić powiadomienie.

Następne kroki

W tym przewodniku Szybki start użyto programu Visual Studio do utworzenia i opublikowania aplikacji funkcji języka C# na platformie Azure z prostą funkcją wyzwalacza HTTP.

Aby dowiedzieć się więcej na temat pracy z funkcjami języka C# uruchamianymi w izolowanym procesie roboczym, zobacz Przewodnik dotyczący uruchamiania usługi Azure Functions w języku C# w izolowanym procesie roboczym. Zapoznaj się z obsługiwanymi wersjami platformy .NET, aby wyświetlić inne wersje obsługiwanych wersji platformy .NET w izolowanym procesie roboczym.

Przejdź do następnego artykułu, aby dowiedzieć się, jak dodać powiązanie kolejki usługi Azure Storage do funkcji: