Upgrade uitvoeren naar Azure Search .NET SDK versie 5
Als u versie 4.0 of ouder van de .NET SDK gebruikt, helpt dit artikel u bij het upgraden van uw toepassing om versie 5 te gebruiken.
Zie Azure Search gebruiken vanuit een .NET-toepassing voor een algemeen overzicht van de SDK, inclusief voorbeelden.
Versie 5 van de Azure Search .NET SDK bevat enkele wijzigingen uit eerdere versies. Deze zijn meestal klein, dus het wijzigen van uw code moet slechts minimale inspanning vereisen. Zie Stappen om een upgrade uit te voeren voor instructies over het wijzigen van uw code voor het gebruik van de nieuwe SDK-versie.
Notitie
Als u versie 2.0 of ouder gebruikt, moet u eerst upgraden naar versie 3 en vervolgens upgraden naar versie 5. Zie Upgraden naar azure Search .NET SDK versie 3 voor instructies.
Uw Azure Search-service-exemplaar ondersteunt verschillende REST API-versies, waaronder de nieuwste. U kunt een versie blijven gebruiken wanneer deze niet meer de meest recente versie is, maar u wordt aangeraden uw code te migreren om de nieuwste versie te gebruiken. Wanneer u de REST API gebruikt, moet u de API-versie opgeven in elke aanvraag via de parameter api-versie. Wanneer u de .NET SDK gebruikt, bepaalt de versie van de SDK die u gebruikt de bijbehorende versie van de REST API. Als u een oudere SDK gebruikt, kunt u die code blijven uitvoeren zonder wijzigingen, zelfs als de service wordt bijgewerkt om een nieuwere API-versie te ondersteunen.
Wat is er nieuw in versie 5
Versie 5 van de Azure Search .NET SDK is gericht op de meest recente algemeen beschikbare versie van de Azure Search REST API, met name 2017-11-11. Dit maakt het mogelijk om nieuwe functies van Azure Search te gebruiken vanuit een .NET-toepassing, waaronder het volgende:
- Synoniemen.
- U kunt nu programmatisch toegang krijgen tot waarschuwingen in de uitvoeringsgeschiedenis van de indexeerfunctie (zie de
Warning
eigenschap vanIndexerExecutionResult
de .NET-verwijzing voor meer informatie). - Ondersteuning voor .NET Core 2.
- Nieuwe pakketstructuur biedt ondersteuning voor het gebruik van alleen de onderdelen van de SDK die u nodig hebt (zie Belangrijke wijzigingen in versie 5 voor meer informatie).
Stappen voor het upgraden
Werk eerst uw NuGet-referentie bij voor Microsoft.Azure.Search
het gebruik van de NuGet Pakketbeheer Console of door met de rechtermuisknop op uw projectverwijzingen te klikken en NuGet-pakketten beheren te selecteren... in Visual Studio.
Zodra NuGet de nieuwe pakketten en hun afhankelijkheden heeft gedownload, bouwt u uw project opnieuw op. Afhankelijk van hoe uw code is gestructureerd, kan deze opnieuw worden opgebouwd. Zo ja, dan bent u klaar om te gaan!
Als uw build mislukt, ziet u als volgt een buildfout:
The name 'SuggesterSearchMode' does not exist in the current context
De volgende stap is het oplossen van deze buildfout. Zie Belangrijke wijzigingen in versie 5 voor meer informatie over wat de fout veroorzaakt en hoe u deze kunt oplossen.
Als gevolg van wijzigingen in de verpakking van de Azure Search .NET SDK moet u uw toepassing opnieuw bouwen om versie 5 te kunnen gebruiken. Deze wijzigingen worden beschreven in belangrijke wijzigingen in versie 5.
Mogelijk ziet u aanvullende buildwaarschuwingen met betrekking tot verouderde methoden of eigenschappen. De waarschuwingen bevatten instructies over wat u moet gebruiken in plaats van de afgeschafte functie. Als uw toepassing bijvoorbeeld gebruikmaakt van de IndexingParametersExtensions.DoNotFailOnUnsupportedContentType
methode, krijgt u een waarschuwing met de melding 'Dit gedrag is nu standaard ingeschakeld, dus het aanroepen van deze methode is niet meer nodig'.
Zodra u buildfouten of waarschuwingen hebt opgelost, kunt u desgewenst wijzigingen aanbrengen in uw toepassing om te profiteren van nieuwe functionaliteit. Nieuwe functies in de SDK worden beschreven in wat er nieuw is in versie 5.
Belangrijke wijzigingen in versie 5
Nieuwe pakketstructuur
De belangrijkste wijziging in versie 5 is dat de Microsoft.Azure.Search
assembly en de inhoud ervan zijn onderverdeeld in vier afzonderlijke assembly's die nu worden gedistribueerd als vier afzonderlijke NuGet-pakketten:
-
Microsoft.Azure.Search
: Dit is een metapakket dat alle andere Azure Search-pakketten bevat als afhankelijkheden. Als u een upgrade uitvoert van een eerdere versie van de SDK, hoeft u dit pakket alleen maar te upgraden en opnieuw te bouwen om de nieuwe versie te kunnen gebruiken. -
Microsoft.Azure.Search.Data
: Gebruik dit pakket als u een .NET-toepassing ontwikkelt met behulp van Azure Search en u alleen documenten in uw indexen hoeft op te vragen of bij te werken. Als u ook indexen, synoniemenkaarten of andere resources op serviceniveau moet maken of bijwerken, gebruikt u in plaats daarvan hetMicrosoft.Azure.Search
pakket. -
Microsoft.Azure.Search.Service
: Gebruik dit pakket als u automatisering in .NET ontwikkelt voor het beheren van Azure Search-indexen, synoniemenoverzichten, indexeerfuncties, gegevensbronnen of andere resources op serviceniveau. Als u alleen documenten in uw indexen hoeft op te vragen of bij te werken, gebruikt u hetMicrosoft.Azure.Search.Data
pakket. Als u alle functionaliteit van Azure Search nodig hebt, gebruikt u hetMicrosoft.Azure.Search
pakket. -
Microsoft.Azure.Search.Common
: Algemene typen die nodig zijn voor de Azure Search .NET-bibliotheken. U hoeft dit pakket niet rechtstreeks in uw toepassing te gebruiken; Het is alleen bedoeld om te worden gebruikt als een afhankelijkheid.
Deze wijziging is technisch verbroken omdat veel typen zijn verplaatst tussen assembly's. Daarom is het opnieuw opbouwen van uw toepassing nodig om een upgrade uit te voeren naar versie 5 van de SDK.
Er is een klein aantal andere belangrijke wijzigingen in versie 5 waarvoor mogelijk codewijzigingen nodig zijn, naast het opnieuw opbouwen van uw toepassing.
Wijzigen in suggesties
De Suggester
constructor heeft enum
geen parameter meer voor SuggesterSearchMode
. Deze opsomming had slechts één waarde en was daarom overbodig. Als u als gevolg hiervan buildfouten ziet, verwijdert u gewoon verwijzingen naar de SuggesterSearchMode
parameter.
Verouderde leden verwijderd
Mogelijk ziet u buildfouten met betrekking tot methoden of eigenschappen die zijn gemarkeerd als verouderd in eerdere versies en die vervolgens in versie 5 zijn verwijderd. Als u dergelijke fouten tegenkomt, kunt u deze als volgt oplossen:
- Als u de
IndexingParametersExtensions.IndexStorageMetadataOnly
methode gebruikt, gebruiktSetBlobExtractionMode(BlobExtractionMode.StorageMetadata)
u in plaats daarvan. - Als u de
IndexingParametersExtensions.SkipContent
methode gebruikt, gebruiktSetBlobExtractionMode(BlobExtractionMode.AllMetadata)
u in plaats daarvan.
Preview-functies verwijderd
Als u een upgrade uitvoert van versie 4.0-preview naar versie 5, moet u er rekening mee houden dat ondersteuning voor JSON-matrix- en CSV-parsering voor Blob-indexeerfuncties is verwijderd omdat deze functies nog in preview zijn. Met name zijn de volgende methoden van de IndexingParametersExtensions
klasse verwijderd:
ParseJsonArrays
ParseDelimitedTextFiles
Als uw toepassing een harde afhankelijkheid heeft van deze functies, kunt u geen upgrade uitvoeren naar versie 5 van de Azure Search .NET SDK. U kunt versie 4.0-preview blijven gebruiken. Houd er echter rekening mee dat we het gebruik van preview-SDK's in productietoepassingen niet aanbevelen. Preview-functies zijn alleen bedoeld voor evaluatie en kunnen worden gewijzigd.
Conclusie
Als u meer informatie nodig hebt over het gebruik van de Azure Search .NET SDK, raadpleegt u de instructies voor .NET.
We zijn blij met uw feedback over de SDK. Als u problemen ondervindt, kunt u ons gerust vragen om hulp bij Stack Overflow. Als u een fout vindt, kunt u een probleem in de Azure .NET SDK-GitHub opslagplaats opslaan. Zorg ervoor dat u de titel van het probleem voorafzet met [Azure Search].
Bedankt voor het gebruik van Azure Search.