Uaktualnianie do zestawu .NET SDK usługi Azure Search w wersji 5
Jeśli używasz wersji 4.0-preview lub starszej zestawu .NET SDK, ten artykuł pomoże Ci uaktualnić aplikację do korzystania z wersji 5.
Aby zapoznać się z bardziej ogólnym przewodnikiem po zestawie SDK, w tym przykładami, zobacz How to use Azure Search from a .NET Application (Jak używać usługi Azure Search z poziomu aplikacji .NET).
Wersja 5 zestawu .NET SDK usługi Azure Search zawiera pewne zmiany z wcześniejszych wersji. Są one głównie niewielkie, więc zmiana kodu powinna wymagać jedynie minimalnego nakładu pracy. Zobacz Kroki uaktualniania, aby uzyskać instrukcje dotyczące zmiany kodu w celu korzystania z nowej wersji zestawu SDK.
Uwaga
Jeśli używasz wersji 2.0-preview lub starszej, najpierw należy przeprowadzić uaktualnienie do wersji 3, a następnie przeprowadzić uaktualnienie do wersji 5. Aby uzyskać instrukcje, zobacz Uaktualnianie do zestawu .NET SDK usługi Azure Search w wersji 3 .
Wystąpienie usługi Azure usługa wyszukiwania obsługuje kilka wersji interfejsu API REST, w tym najnowsze. Możesz nadal używać wersji, gdy nie jest już najnowsza, ale zalecamy przeprowadzenie migracji kodu w celu korzystania z najnowszej wersji. W przypadku korzystania z interfejsu API REST należy określić wersję interfejsu API w każdym żądaniu za pomocą parametru api-version. W przypadku korzystania z zestawu SDK platformy .NET używana wersja zestawu SDK określa odpowiednią wersję interfejsu API REST. Jeśli używasz starszego zestawu SDK, możesz nadal uruchamiać ten kod bez żadnych zmian, nawet jeśli usługa zostanie uaktualniona do obsługi nowszej wersji interfejsu API.
Co nowego w wersji 5
Wersja 5 zestawu .NET SDK usługi Azure Search jest przeznaczona dla najnowszej ogólnie dostępnej wersji interfejsu API REST usługi Azure Search, w szczególności 2017-11-11. Dzięki temu można korzystać z nowych funkcji usługi Azure Search z poziomu aplikacji .NET, w tym następujących:
- Synonimy.
- Teraz można programowo uzyskiwać dostęp do ostrzeżeń w historii wykonywania indeksatora (zobacz
Warning
właściwośćIndexerExecutionResult
w dokumentacji platformy .NET , aby uzyskać więcej informacji). - Obsługa platformy .NET Core 2.
- Nowa struktura pakietów obsługuje używanie tylko potrzebnych części zestawu SDK (zobacz Istotne zmiany w wersji 5 , aby uzyskać szczegółowe informacje).
Kroki uaktualniania
Najpierw zaktualizuj odwołanie do NuGet przy Microsoft.Azure.Search
użyciu konsoli NuGet Menedżer pakietów lub klikając prawym przyciskiem myszy odwołania do projektu i wybierając pozycję "Zarządzaj pakietami NuGet..." w Visual Studio.
Po NuGet pobrać nowe pakiety i ich zależności ponownie skompiluj projekt. W zależności od struktury kodu może ona zostać pomyślnie ponownie skompilowana. Jeśli tak, możesz zacząć!
Jeśli kompilacja zakończy się niepowodzeniem, powinien zostać wyświetlony błąd kompilacji podobny do następującego:
The name 'SuggesterSearchMode' does not exist in the current context
Następnym krokiem jest naprawienie tego błędu kompilacji. Zobacz Zmiany powodujące niezgodność w wersji 5 , aby uzyskać szczegółowe informacje na temat przyczyn błędu i sposobu jego naprawy.
Należy pamiętać, że ze względu na zmiany w opakowaniu zestawu .NET SDK usługi Azure Search należy ponownie skompilować aplikację, aby korzystać z wersji 5. Te zmiany zostały szczegółowo opisane w artykule Istotne zmiany w wersji 5.
Mogą zostać wyświetlone dodatkowe ostrzeżenia kompilacji związane z przestarzałymi metodami lub właściwościami. Ostrzeżenia będą zawierać instrukcje dotyczące sposobu użycia zamiast przestarzałej funkcji. Jeśli na przykład aplikacja używa IndexingParametersExtensions.DoNotFailOnUnsupportedContentType
metody , powinien zostać wyświetlone ostrzeżenie z informacją "To zachowanie jest teraz domyślnie włączone, więc wywołanie tej metody nie jest już konieczne".
Po usunięciu błędów kompilacji lub ostrzeżeń możesz wprowadzić zmiany w aplikacji, aby skorzystać z nowych funkcji, jeśli chcesz. Nowe funkcje w zestawie SDK są szczegółowo opisane w artykule Co nowego w wersji 5.
Istotne zmiany w wersji 5
Nowa struktura pakietu
Najbardziej znaczącą zmianą powodującą niezgodność w wersji 5 jest to, że Microsoft.Azure.Search
zestaw i jego zawartość zostały podzielone na cztery oddzielne zestawy, które są teraz dystrybuowane jako cztery oddzielne pakiety NuGet:
-
Microsoft.Azure.Search
: jest to metapakiet zawierający wszystkie inne pakiety usługi Azure Search jako zależności. W przypadku uaktualniania z wcześniejszej wersji zestawu SDK po prostu uaktualnienie tego pakietu i ponowne kompilowanie powinno wystarczyć, aby rozpocząć korzystanie z nowej wersji. -
Microsoft.Azure.Search.Data
: Użyj tego pakietu, jeśli tworzysz aplikację .NET przy użyciu usługi Azure Search i musisz wykonywać zapytania o dokumenty lub aktualizować je tylko w indeksach. Jeśli musisz również utworzyć lub zaktualizować indeksy, mapy synonimów lub inne zasoby na poziomie usługi, użyjMicrosoft.Azure.Search
pakietu. -
Microsoft.Azure.Search.Service
: Użyj tego pakietu, jeśli tworzysz automatyzację na platformie .NET, aby zarządzać indeksami usługi Azure Search, mapami synonimów, indeksatorami, źródłami danych lub innymi zasobami na poziomie usługi. Jeśli musisz wykonywać zapytania o dokumenty lub aktualizować je tylko w indeksach, użyjMicrosoft.Azure.Search.Data
pakietu. Jeśli potrzebujesz wszystkich funkcji usługi Azure Search, użyjMicrosoft.Azure.Search
pakietu. -
Microsoft.Azure.Search.Common
: typowe typy wymagane przez biblioteki platformy .NET usługi Azure Search. Nie należy używać tego pakietu bezpośrednio w aplikacji; Jest ona przeznaczona tylko do użycia jako zależność.
Ta zmiana jest technicznie istotna, ponieważ wiele typów zostało przeniesionych między zestawami. Dlatego ponowne kompilowanie aplikacji jest konieczne w celu uaktualnienia do wersji 5 zestawu SDK.
Istnieje niewielka liczba innych zmian powodujących niezgodność w wersji 5, które mogą wymagać zmian kodu oprócz ponownego kompilowania aplikacji.
Zmień na sugestorów
Konstruktor Suggester
nie ma już parametru enum
dla .SuggesterSearchMode
To wyliczenie miało tylko jedną wartość i dlatego było nadmiarowe. Jeśli w wyniku tego zostaną wyświetlone błędy kompilacji, po prostu usuń odwołania do parametru SuggesterSearchMode
.
Usunięto przestarzałe elementy członkowskie
Mogą zostać wyświetlone błędy kompilacji związane z metodami lub właściwościami, które zostały oznaczone jako przestarzałe we wcześniejszych wersjach, a następnie usunięte w wersji 5. Jeśli wystąpią takie błędy, poniżej przedstawiono sposób ich rozwiązywania:
- Jeśli używasz
IndexingParametersExtensions.IndexStorageMetadataOnly
metody , użyjSetBlobExtractionMode(BlobExtractionMode.StorageMetadata)
zamiast tego. - Jeśli używasz
IndexingParametersExtensions.SkipContent
metody , użyjSetBlobExtractionMode(BlobExtractionMode.AllMetadata)
zamiast tego.
Usunięto funkcje w wersji zapoznawczej
W przypadku uaktualniania z wersji 4.0-preview do wersji 5 należy pamiętać, że obsługa analizowania tablic JSON i csv dla indeksatorów obiektów blob została usunięta, ponieważ te funkcje są nadal dostępne w wersji zapoznawczej. W szczególności następujące metody IndexingParametersExtensions
klasy zostały usunięte:
ParseJsonArrays
ParseDelimitedTextFiles
Jeśli aplikacja ma twardą zależność od tych funkcji, nie będzie można przeprowadzić uaktualnienia do wersji 5 zestawu .NET SDK usługi Azure Search. Możesz nadal używać wersji 4.0-preview. Należy jednak pamiętać, że nie zalecamy używania zestawów SDK w wersji zapoznawczej w aplikacjach produkcyjnych. Funkcje w wersji zapoznawczej są przeznaczone tylko do oceny i mogą ulec zmianie.
Podsumowanie
Jeśli potrzebujesz dodatkowych informacji na temat korzystania z zestawu .NET SDK usługi Azure Search, zobacz instrukcje dotyczące platformy .NET.
Z zadowoleniem przyjmujemy Twoją opinię na temat zestawu SDK. Jeśli napotkasz problemy, możesz poprosić nas o pomoc w witrynie Stack Overflow. Jeśli znajdziesz usterkę, możesz zgłosić problem w repozytorium GitHub zestawu Azure .NET SDK. Pamiętaj, aby prefiksować tytuł problemu z ciągiem "[Azure Search]".
Dziękujemy za korzystanie z usługi Azure Search!