.NET Aspire to zestaw narzędzi, szablonów i pakietów do tworzenia obserwowalnych aplikacji gotowych do produkcji. .NET Aspire jest dostarczany za pośrednictwem kolekcji pakietów NuGet, które uruchamiają lub poprawiają konkretne wyzwania związane z nowoczesnym tworzeniem aplikacji. Dzisiejsze aplikacje zazwyczaj korzystają z dużej liczby usług, takich jak bazy danych, obsługa komunikatów i buforowanie, z których wiele jest obsługiwanych za pośrednictwem .NET.NET Aspire Integrations. Aby uzyskać informacje na temat pomocy technicznej, zobacz zasady pomocy technicznej .NET.NET Aspire.
Dlaczego .NET.NET Aspire?
.NET
.NET Aspire usprawnia tworzenie aplikacji, które mają różne projekty i zasoby. Dzięki ulepszeniom produktywności w czasie tworzenia, które emulują wdrożone scenariusze, można szybko tworzyć połączone aplikacje. Zaprojektowana pod kątem elastyczności, .NET.NET Aspire umożliwia zastępowanie lub rozszerzanie części preferowanymi narzędziami i przepływami pracy. Najważniejsze funkcje obejmują:
Integrations: .NET Aspire integracje to pakiety NuGet dla często używanych usług, takich jak Redis lub Postgres, które dzięki ustandaryzowanym interfejsom zapewniają spójne i bezproblemowe połączenie z aplikacją.
Tooling: .NET Aspire zawiera szablony projektów i narzędzia dla Visual Studio, Visual Studio Codeoraz interfejsu wiersza polecenia .NET, co ułatwia tworzenie i interakcję z projektami .NET.NET Aspire.
Orkiestracja w czasie tworzenia
W .NET.NET Aspire"orkiestracja" koncentruje się przede wszystkim na ulepszaniu lokalnego środowiska deweloperskiego, upraszczając zarządzanie konfiguracją i wzajemnymi połączeniami aplikacji. Należy pamiętać, że orkiestracja .NET.NET Aspirenie ma na celu zastąpienia niezawodnych systemów używanych w środowiskach produkcyjnych, takich jak Kubernetes. Zamiast tego jest to zestaw abstrakcji, który usprawnia konfigurowanie odnajdywania usług, zmiennych środowiskowych i konfiguracji kontenerów, eliminując konieczność obsługi szczegółów implementacji niskiego poziomu. Dzięki .NET.NET Aspirekod ma spójne środowisko uruchamiania na dowolnej maszynie deweloperskiej bez konieczności wykonywania złożonych kroków ręcznych, co ułatwia zarządzanie w fazie rozwoju.
.NET
.NET Aspire orkiestracja pomaga w następujących kwestiach:
Kompozycja aplikacji: określ projekty .NET, kontenery, pliki wykonywalne i zasoby w chmurze, które tworzą aplikację.
odkrywanie usług i zarządzanie ciągami połączeń: host aplikacji wprowadza odpowiednie ciągi połączeń, konfiguracje sieci i informacje o odkrywaniu usług, aby uprościć doświadczenie dewelopera.
Na przykład przy użyciu .NET Aspireponiższy kod tworzy lokalny zasób kontenera Redis, czeka na udostępnienie go, a następnie konfiguruje odpowiednie parametry połączenia w projekcie "frontend" z kilkoma wywołaniami metody pomocniczej:
C#
// Create a distributed application builder given the command line arguments.var builder = DistributedApplication.CreateBuilder(args);
// Add a Redis server to the application.var cache = builder.AddRedis("cache");
// Add the frontend project to the application and configure it to use the // Redis server, defined as a referenced dependency.
builder.AddProject<Projects.MyFrontend>("frontend")
.WithReference(cache)
.WaitFor(cache);
Aby uzyskać więcej informacji, zobacz omówienie orkiestracji .NET.NET Aspire.
Ważne
Wywołanie AddRedis tworzy nowy kontener Redis w lokalnym środowisku deweloperskim. Jeśli wolisz użyć istniejącego wystąpienia Redis, możesz użyć metody AddConnectionString, aby odwołać się do istniejących parametrów połączenia. Aby uzyskać więcej informacji, zobacz Dokumentacja istniejących zasobów.
integracje .NET.NET Aspire
.NET
.NET Aspire integracje to pakiety NuGet przeznaczone do upraszczania połączeń z popularnymi usługami i platformami, takimi jak Redis lub PostgreSQL.
.NET
.NET Aspire integracje obsługują konfigurację i interakcję zasobów w chmurze za pomocą standardowych wzorców, takich jak dodawanie kontroli kondycji i telemetrii. Integracje są dwa razy — "hosting" integracje reprezentuje usługę, z którą nawiązujesz połączenie, a integracje "klienta" reprezentują klienta lub konsumenta tej usługi. Innymi słowy, w przypadku wielu pakietów hostingowych istnieje odpowiedni pakiet klienta, który obsługuje połączenie z usługą w kodzie.
Każda integracja jest przeznaczona do pracy z hostem aplikacji .NET.NET Aspire, a ich konfiguracje są automatycznie wstrzykiwane przez poprzez odwołanie się do nazwanych zasobów. Innymi słowy, jeśli Example.ServiceFoo odwołuje się do Example.ServiceBar, Example.ServiceFoo dziedziczy konfiguracje niezbędne do integracji, aby umożliwić im automatyczną komunikację między sobą.
Rozważmy na przykład następujący kod przy użyciu integracji z usługą .NET.NET Aspire Service Bus:
Rejestruje ServiceBusClient jako singleton w kontenerze DI do połączenia z Azure Service Bus.
Stosuje konfiguracje ServiceBusClient bezpośrednio w kodzie lub za pomocą konfiguracji.
Włącza odpowiednie sprawdzanie stanu zdrowia, rejestrowanie i dane telemetryczne specyficzne dla użycia Azure Service Bus.
Pełna lista dostępnych integracji została szczegółowo przedstawiona na stronie przeglądu integracji .NET.NET Aspire.
Szablony projektów i narzędzia
.NET Aspire udostępnia zestaw szablonów projektów i narzędzi dla Visual Studio, Visual Studio Codeoraz interfejsu linii poleceń .NET. Te szablony ułatwiają tworzenie i interakcję z projektami .NET Aspire lub dodawanie .NET Aspire do istniejącej bazy kodu. Szablony zawierają zestaw opiniowanych ustawień domyślnych, które ułatwiają szybkie rozpoczęcie pracy — na przykład zawierają szablonowy kod umożliwiający włączenie kontroli stanu i logowania w aplikacjach .NET. Te wartości domyślne są w pełni dostosowywalne, dzięki czemu można je edytować i dostosowywać do własnych potrzeb.
szablony .NET.NET Aspire też obejmują szablonowe metody rozszerzeń, które obsługują typowe konfiguracje usług:
Po dodaniu do pliku Program.cs powyższy kod obsługuje następujące kwestie:
OpenTelemetry: Konfiguruje sformatowane rejestrowanie, metryki czasu wykonywania, wbudowane mierniki i śledzenie dla ASP.NET Core, gRPC i HTTP. Aby uzyskać więcej informacji, zobacz .NET.NET Aspire telemetry.
Domyślne kontrole stanu: Dodaje domyślne punkty końcowe sprawdzania stanu, z których narzędzia mogą korzystać, aby monitorować aplikację. Aby uzyskać więcej informacji, zobacz .NET sprawdzanie kondycji aplikacji w języku C#.
Źródło tej zawartości można znaleźć w witrynie GitHub, gdzie można również tworzyć i przeglądać problemy i żądania ściągnięcia. Więcej informacji znajdziesz w naszym przewodniku dla współtwórców.
Opinia o produkcie .NET Aspire
.NET Aspire to projekt typu open source. Wybierz link, aby przekazać opinię:
Dołącz do serii meetup, aby tworzyć skalowalne rozwiązania sztucznej inteligencji oparte na rzeczywistych przypadkach użycia z innymi deweloperami i ekspertami.
W tym module dowiesz się więcej o aplikacjach natywnych dla chmury oraz o tym, jak stos .NET Aspire ułatwia opracowywanie mikrousług i łączenie ich ze sobą oraz z usługami pomocniczymi.
Twórz kompleksowe rozwiązania na platformie Microsoft Azure, aby tworzyć usługi Azure Functions, implementować aplikacje internetowe i zarządzać nimi, opracowywać rozwiązania korzystające z usługi Azure Storage i nie tylko.