Udostępnij za pośrednictwem


Nawiązywanie połączenia z usługami platformy Azure, gRPC, OpenAPI i nie tylko

Deweloperzy kompilują aplikacje z coraz większą liczbą usług, ale technologie usług ewoluują tak szybko.

Dzięki połączonym usługom programu Visual Studio uzyskasz nowoczesne środowisko korzystania z usług, które umożliwia każdemu usłudze dostosowanie środowiska użycia, monitując o odpowiednie pytania, które należy szybko rozpocząć.

Usługi połączone obejmują kolekcję narzędzi w programie Visual Studio, które ułatwiają łączenie aplikacji z następującymi elementami:

  • Usługi platformy Azure
  • Punkty końcowe interfejsu OpenAPI
  • punkty końcowe gRPC (zdalne wywołanie procedury)
  • Punkty końcowe programu Windows Communication Foundation (WCF)
  • Bazy danych i dostawcy danych

Rozpocznij od kliknięcia prawym przyciskiem myszy węzła Usługi połączone w Eksplorator rozwiązań i wybierz pozycję Zarządzaj połączonymi usługami.

Rozpocznij od kliknięcia prawym przyciskiem myszy węzła projektu i wybrania pozycji Dodaj > połączoną usługę. Możesz również kliknąć prawym przyciskiem myszy węzeł Usługi połączone w Eksplorator rozwiązań i wybrać określoną usługę do dodania.

Obsługiwane typy projektów różnią się w zależności od typu usługi. Zobaczysz opcje, które mają zastosowanie do typu projektu w wyświetlonych opcjach.

Wiele subskrypcji programu Visual Studio obejmuje indywidualne środki na tworzenie i testowanie platformy Azure. Jeśli jesteś subskrybentem programu Visual Studio, możesz użyć tych środków, aby wypróbować różne usługi platformy Azure bez ponoszenia kosztów. Jeśli nie jesteś subskrybentem i nie masz subskrypcji platformy Azure, możesz utworzyć bezpłatne konto.

Łączenie aplikacji z usługami platformy Azure

Użyj usług połączonych, aby połączyć aplikację z emulatorami usług platformy Azure na żywo i innymi lokalnymi alternatywami dla usług platformy Azure. Program Visual Studio obsługuje obecnie następujące elementy:

Nazwa/nazwisko opis
Konfiguracja aplikacja systemu Azure Uzyskiwanie dostępu do ustawień klucz-wartość i flag funkcji zarządzanych centralnie na platformie Azure.
aplikacja systemu Azure Insights Zapewnia rozszerzalne zarządzanie wydajnością aplikacji i monitorowanie dla aplikacji internetowych na żywo.
Azure App Service Zapewnia pełną usługę, skalowalne hostowanie aplikacji internetowych na żywo.
Azure Functions Udostępnia skalowalne usługi obliczeniowe na żądanie dla internetowych interfejsów API i nie tylko.
Azure Storage Skalowalny magazyn w chmurze z obsługą obiektów blob, tabel, kolejek, dysków.
Usługa Azure SignalR Service Funkcja internetowa w czasie rzeczywistym za pośrednictwem protokołu HTTP.
Azure Key Vault Zabezpieczanie magazynu w chmurze na potrzeby kluczy kryptograficznych i innych wpisów tajnych używanych przez aplikacje platformy Azure.
Azure SQL Database Hostowana w chmurze baza danych SQL Database.
Azure Cache for Redis Magazyn danych w pamięci oparty na oprogramowaniu Redis.
Azure Cosmos DB W pełni zarządzana baza danych NoSQL na potrzeby tworzenia nowoczesnych aplikacji.
Platforma tożsamości Microsoft Uwierzytelnianie przy użyciu tożsamości firmy Microsoft i kont społecznościowych.

Uwaga

Za pomocą funkcji Publikuj możesz wdrożyć aplikację w usługach hostingowych platformy Azure, takich jak maszyny wirtualne platformy Azure, aplikacja systemu Azure Service, Azure Functions i Azure Container Registry

Bazy danych i dostawcy danych

Program Visual Studio udostępnia opcje łączenia się z lokalnymi bazami danych, lokalnie emulowane wersje dostawców danych, a także z usługami baz danych platformy Azure.

Nazwa/nazwisko opis
Emulator usługi Azure Cosmos DB w kontenerze Emulator usługi Azure Cosmos DB uruchomiony w kontenerze lokalnym.
Baza danych MongoDB w kontenerze Bazy danych dokumentów MongoDB zapewniają wysoką niezawodność i łatwą skalowalność. Ta opcja udostępnia ją w kontenerze lokalnym.
PostgreSQL w kontenerze PostgreSQL to system relacyjnej bazy danych, który zapewnia niezawodność i integralność danych. Ta opcja udostępnia ją w kontenerze lokalnym.
SQLite SQLite to biblioteka procesów, która udostępnia samodzielny, transakcyjny aparat bazy danych programu SQL Server bez konfiguracji.
Baza danych programu SQL Server Lokalna baza danych programu SQL Server.

Obsługa emulatorów platformy Azure i lokalnych alternatyw

Program Visual Studio ułatwia lokalne opracowywanie aplikacji platformy Azure przez złagodzenie przejścia z lokalnie emulowanych usług do usług działających w chmurze. Usługi połączone umożliwiają łączenie aplikacji z lokalnymi emulatorami, z których niektóre działają w kontenerze lokalnym i inne lokalne alternatywy dla usług platformy Azure. Program Visual Studio obsługuje obecnie następujące elementy:

Program Visual Studio generuje dowolny niezbędny kod klienta lub serwera, aby ułatwić komunikację.

Nazwa/nazwisko opis
Emulator usługi Azure Cosmos DB w kontenerze Emulator usługi Azure Cosmos DB uruchomiony w kontenerze lokalnym.
Azure Storage Emulator Azurite to emulator usługi Azure Storage, który działa na komputerze lokalnym.
Application Insights SDK Tryb lokalny dla usługi Application Insights.
RabbitMQ w kontenerze RabbitMQ to wieloprotokolowy broker komunikatów typu open source. Ta opcja udostępnia ją w kontenerze lokalnym.
Usługa Azure Cache for Redis w kontenerze Usługa Azure Cache for Redis hostowana w kontenerze lokalnym.
Secrets.json Alternatywa lokalna dla usługi Key Vault.
SQL Server Express LocalDB Lokalna alternatywa dla usługi Azure SQL Database.

Łączenie aplikacji z punktami końcowymi gRPC, OpenAPI i WCF

Użyj usług połączonych, aby połączyć aplikację z dowolną z następujących usług:

Nazwisko łącze ASP.NET opis
Punkty końcowe interfejsu OpenAPI Obsługa interfejsu OpenAPI w aplikacjach interfejsu API platformy ASP.NET Core Standardowy format opisujący możliwości usługi w postaci czytelnej dla komputera i czytelnej dla człowieka.
Punkty końcowe gRPC Wprowadzenie do usług gRPC na platformie .NET Usługa wywołująca procedurę w czasie rzeczywistym typu open source.
Punkty końcowe programu WCF Nie dotyczy Rozwiązanie .NET Framework obsługujące programowanie z rozproszoną siecią usług.

Kontenery

Usługi połączone mogą pomóc w uruchamianiu zależności aplikacji, które emulują usługi platformy Azure lokalnie w kontenerze. Na przykład możesz uruchomić emulator usługi Azure Storage o nazwie Azurite w kontenerze lokalnie. W następnej sekcji opisano, co zapewnia obsługa programu Visual Studio w celu przejścia aplikacji z trybu programowania, gdy używasz tych pozornych usług w kontenerach do korzystania z rzeczywistych usług działających na platformie Azure.

Konfiguracje lokalne i połączone

Podczas programowania zwykle używasz lokalnego emulatora, lokalnej bazy danych lub makiety usługi działającej w kontenerze lokalnym. Jeśli używasz procesu publikowania w programie Visual Studio do wdrażania w chmurze, niezależnie od tego, czy jest to platforma Azure, usługa Docker Hub, czy inne obsługiwane środowisko zdalne, program Visual Studio może przeprowadzić przejście do nawiązywania połączenia z rzeczywistymi usługami i bazami danych. Po kliknięciu prawym przyciskiem myszy węzła projektu w Eksplorator rozwiązań i wybraniu pozycji Publikuj przejdź przez proces wdrażania aplikacji do chmury, ale następnie zależności usługi skonfigurowane wcześniej do użytku lokalnego są teraz wyświetlane w interfejsie użytkownika połączonych usług z żółtą ikoną ostrożności i linkiem Konfiguruj:

Zrzut ekranu przedstawiający opcję Konfiguruj na karcie Połączone usługi.

Jeśli klikniesz te linki, program Visual Studio wyświetli kilka ekranów z prośbą o podanie informacji o połączeniu z usługą "rzeczywistą" działającą w chmurze, której aplikacja w chmurze będzie używać zamiast usługi lokalnej. Jeśli na przykład początkowo skonfigurowano aplikację do uruchamiania z lokalnie uruchomionym wystąpieniem bazy danych SQL LocalDB, należy podać nazwę parametry połączenia i początkową wartość, która odwołuje się do tej bazy danych LocalDB. Po pierwszym wdrożeniu aplikacji w środowisku chmury można użyć linków Konfiguruj, aby określić parametry połączenia do użycia w chmurze. W przypadku scenariuszy wdrażania platformy Azure program Visual Studio udostępnia również możliwość bezpiecznego przechowywania parametry połączenia i innych wpisów tajnych przy użyciu usługi Azure Key Vault.

Zrzut ekranu przedstawiający opcje przedstawione w celu zastąpienia usługi SQL LocalDB rzeczywistym połączeniem bazy danych.

Jak to działa

Program Visual Studio tworzy dwa nowe pliki widoczne w Eksplorator rozwiązań w obszarze Właściwości o nazwie serviceDependencies.json i serviceDependencies.local.json. Oba te pliki są bezpieczne do zaewidencjonowania, ponieważ nie zawierają żadnych wpisów tajnych.

Program Visual Studio tworzy również plik o nazwie serviceDependencies.local.json.user, który nie jest domyślnie widoczny w Eksplorator rozwiązań. Ten plik zawiera informacje, które można uznać za wpis tajny (na przykład identyfikatory zasobów na platformie Azure) i nie zalecamy jego zaewidencjonować.