Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Wenn Sie Version 4.0-Vorschau oder älter des .NET SDK verwenden, hilft Ihnen dieser Artikel, Ihre Anwendung auf die Verwendung von Version 5 zu aktualisieren.
Eine allgemeinere exemplarische Vorgehensweise des SDK, einschließlich Beispiele, finden Sie unter Verwenden von Azure Search aus einer .NET-Anwendung.
Version 5 des Azure Search .NET SDK enthält einige Änderungen aus früheren Versionen. Dies sind hauptsächlich geringfügig, sodass das Ändern des Codes nur minimale Anstrengungen erfordern sollte. Anweisungen zum Ändern des Codes zur Verwendung der neuen SDK-Version finden Sie in den Schritten zum Upgrade .
Hinweis
Wenn Sie Version 2.0-Preview oder älter verwenden, sollten Sie zuerst ein Upgrade auf Version 3 durchführen und dann auf Version 5 aktualisieren. Anweisungen finden Sie unter Upgrade auf das Azure Search .NET SDK, Version 3 .
Ihre Azure Search-Dienstinstanz unterstützt mehrere REST-API-Versionen, einschließlich der neuesten. Sie können weiterhin eine Version verwenden, wenn sie nicht mehr die neueste version ist. Es wird jedoch empfohlen, Ihren Code zu migrieren, um die neueste Version zu verwenden. Wenn Sie die REST-API verwenden, müssen Sie die API-Version in jeder Anforderung über den Api-Version-Parameter angeben. Bei Verwendung des .NET SDK bestimmt die version des verwendeten SDK die entsprechende Version der REST-API. Wenn Sie ein älteres SDK verwenden, können Sie diesen Code weiterhin ohne Änderungen ausführen, auch wenn der Dienst aktualisiert wird, um eine neuere API-Version zu unterstützen.
Neuerungen in Version 5
Version 5 des Azure Search .NET SDK zielt auf die neueste allgemein verfügbare Version der Azure Search-REST-API ab, insbesondere auf 2017-11-11. Dies ermöglicht die Verwendung neuer Features von Azure Search aus einer .NET-Anwendung, einschließlich der folgenden:
- Synonyme.
- Sie können jetzt programmgesteuert auf Warnungen im Indexerausführungsverlauf zugreifen (weitere Details finden Sie in der
WarningEigenschaftIndexerExecutionResultin der .NET-Referenz ). - Unterstützung für .NET Core 2.
- Die neue Paketstruktur unterstützt nur die Verwendung der benötigten Teile des SDK (details hierzu finden Sie unter "Aktuelle Änderungen in Version 5 ").
Schritte zum Upgrade
Aktualisieren Sie zuerst Ihre NuGet-Referenz für Microsoft.Azure.Search, indem Sie entweder die NuGet-Paket-Manager-Konsole verwenden oder indem Sie mit der rechten Maustaste auf Ihre Projektverweise klicken und "NuGet-Pakete verwalten..." in Visual Studio auswählen.
Nachdem NuGet die neuen Pakete und ihre Abhängigkeiten heruntergeladen hat, erstellen Sie Ihr Projekt neu. Je nachdem, wie Ihr Code strukturiert ist, kann er erfolgreich neu erstellt werden. Wenn ja, sind Sie bereit loszulegen!
Wenn der Build fehlschlägt, sollte ein Buildfehler wie folgt angezeigt werden:
The name 'SuggesterSearchMode' does not exist in the current context
Der nächste Schritt besteht darin, diesen Buildfehler zu beheben. Details dazu, was den Fehler verursacht und wie sie behoben werden können, finden Sie unter "Änderungen in Version 5 ".
Beachten Sie, dass Sie aufgrund von Änderungen an der Verpackung des Azure Search .NET SDK Ihre Anwendung neu erstellen müssen, um Version 5 verwenden zu können. Diese Änderungen werden im Detail in Breaking Changes in Version 5 beschrieben.
Im Zusammenhang mit veralteten Methoden oder Eigenschaften können zusätzliche Build-Warnungen angezeigt werden. Die Warnungen enthalten Anweisungen dazu, was anstelle des veralteten Features verwendet werden soll. Wenn Ihre Anwendung beispielsweise die IndexingParametersExtensions.DoNotFailOnUnsupportedContentType Methode verwendet, sollten Sie eine Warnung mit der Meldung "Dieses Verhalten ist jetzt standardmäßig aktiviert, sodass das Aufrufen dieser Methode nicht mehr erforderlich ist" angezeigt wird.
Nachdem Sie Buildfehler oder Warnungen behoben haben, können Sie Änderungen an Ihrer Anwendung vornehmen, um bei Bedarf neue Funktionen nutzen zu können. Neue Features im SDK sind in Version 5 ausführlich beschrieben.
Unterbrechen von Änderungen in Version 5
Neue Paketstruktur
Die wesentlichste Änderung in Version 5 besteht darin, dass die Microsoft.Azure.Search Assembly und deren Inhalt in vier separate Assemblys unterteilt wurden, die jetzt als vier separate NuGet-Pakete verteilt werden:
-
Microsoft.Azure.Search: Dies ist ein Metapaket, das alle anderen Azure Search-Pakete als Abhängigkeiten enthält. Wenn Sie ein Upgrade von einer früheren Version des SDK durchführen, sollten Sie einfach dieses Paket aktualisieren und neu erstellen, um mit der Verwendung der neuen Version zu beginnen. -
Microsoft.Azure.Search.Data: Verwenden Sie dieses Paket, wenn Sie eine .NET-Anwendung mit Azure Search entwickeln und nur Dokumente in Ihren Indizes abfragen oder aktualisieren müssen. Wenn Sie auch Indizes, Synonymzuordnungen oder andere Ressourcen auf Dienstebene erstellen oder aktualisieren müssen, verwenden Sie stattdessen dasMicrosoft.Azure.SearchPaket. -
Microsoft.Azure.Search.Service: Verwenden Sie dieses Paket, wenn Sie Automatisierung in .NET entwickeln, um Azure Search-Indizes, Synonymzuordnungen, Indexer, Datenquellen oder andere Ressourcen auf Dienstebene zu verwalten. Wenn Sie dokumente nur in Ihren Indizes abfragen oder aktualisieren müssen, verwenden Sie stattdessen dasMicrosoft.Azure.Search.DataPaket. Wenn Sie alle Funktionen von Azure Search benötigen, verwenden Sie stattdessen dasMicrosoft.Azure.SearchPaket. -
Microsoft.Azure.Search.Common: Allgemeine Typen, die von den Azure Search .NET-Bibliotheken benötigt werden. Sie sollten dieses Paket nicht direkt in Ihrer Anwendung verwenden müssen. Es soll nur als Abhängigkeit verwendet werden.
Diese Änderung ist technisch gebrochen, da viele Typen zwischen Assemblys verschoben wurden. Daher ist die Neuerstellung Ihrer Anwendung erforderlich, um ein Upgrade auf Version 5 des SDK durchzuführen.
Es gibt eine kleine Anzahl anderer bahnbrechender Änderungen in Version 5, die zusätzlich zur Neuerstellung Ihrer Anwendung Codeänderungen erfordern können.
Ändern in Suggester
Der Suggester Konstruktor verfügt nicht mehr über einen enum Parameter für SuggesterSearchMode. Dieses Enum hatte nur einen Wert und war daher redundant. Wenn Buildfehler als Ergebnis dieser Fehlermeldungen angezeigt werden, entfernen Sie einfach Verweise auf den SuggesterSearchMode Parameter.
Veraltete Mitglieder entfernt
Möglicherweise werden Buildfehler im Zusammenhang mit Methoden oder Eigenschaften angezeigt, die in früheren Versionen als veraltet gekennzeichnet wurden und anschließend in Version 5 entfernt wurden. Wenn solche Fehler auftreten, können Sie so vorgehen:
- Wenn Sie die
IndexingParametersExtensions.IndexStorageMetadataOnlyMethode verwendet haben, verwenden Sie stattdessenSetBlobExtractionMode(BlobExtractionMode.StorageMetadata). - Wenn Sie die
IndexingParametersExtensions.SkipContentMethode verwendet haben, verwenden SieSetBlobExtractionMode(BlobExtractionMode.AllMetadata)stattdessen.
Entfernte Vorschaufeatures
Wenn Sie ein Upgrade von Version 4.0-Preview auf Version 5 durchführen, beachten Sie, dass json-Array- und CSV-Analyseunterstützung für Blob-Indexer entfernt wurden, da diese Features noch in der Vorschau sind. Insbesondere wurden die folgenden Methoden der IndexingParametersExtensions Klasse entfernt:
ParseJsonArraysParseDelimitedTextFiles
Wenn Ihre Anwendung eine harte Abhängigkeit von diesen Features hat, können Sie kein Upgrade auf Version 5 des Azure Search .NET SDK durchführen. Sie können weiterhin Version 4.0-Preview verwenden. Beachten Sie jedoch, dass wir die Verwendung von Vorschau-SDKs in Produktionsanwendungen nicht empfehlen. Vorschaufeatures dienen nur zur Auswertung und können sich ändern.
Schlussfolgerung
Wenn Sie weitere Details zur Verwendung des Azure Search .NET SDK benötigen, lesen Sie .NET How-to.
Wir freuen uns über Ihr Feedback zum SDK. Wenn Sie Probleme haben, bitten Sie uns gerne um Hilfe zu Stack Overflow. Wenn Sie einen Fehler finden, können Sie das Problem im Azure .NET SDK-GitHub-Repositorymelden. Stellen Sie sicher, dass Sie den Titel Ihres Problems mit "[Azure Search]" beginnen.
Vielen Dank für die Verwendung von Azure Search!