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:
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.
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ć.