Povýšení na verzi 5 sady .NET SDK služby Azure Search

Pokud používáte verzi 4.0-preview nebo starší sadu .NET SDK, pomůže vám tento článek upgradovat aplikaci tak, aby používala verzi 5.

Obecnější návod k sadě SDK včetně příkladů najdete v tématu Použití služby Azure Search z aplikace .NET.

Verze 5 sady .NET SDK služby Azure Search obsahuje některé změny z předchozích verzí. Většinou jsou menší, takže změna kódu by měla vyžadovat jen minimální úsilí. Pokyny, jak změnit svůj kód pro použití nové verze SDK, najdete v krocích pro upgrade.

Poznámka:

Pokud používáte verzi 2.0-Preview nebo starší, měli byste nejprve upgradovat na verzi 3 a pak upgradovat na verzi 5. Pokyny najdete v tématu Upgrade na sadu .NET SDK služby Azure Search verze 3 .

Vaše instance služby Azure Search podporuje několik verzí rozhraní REST API, včetně nejnovější verze. Verzi můžete dál používat, i když už není nejnovější, ale doporučujeme migrovat kód, abyste mohli používat nejnovější verzi. Při použití rozhraní REST API musíte v každém požadavku zadat verzi rozhraní API prostřednictvím parametru api-version. Při použití sady .NET SDK určuje verze sady SDK, kterou používáte, odpovídající verzi rozhraní REST API. Pokud používáte starší sadu SDK, můžete tento kód dál spouštět beze změn, i když je služba upgradovaná tak, aby podporovala novější verzi rozhraní API.

Novinky ve verzi 5

Verze 5 sady .NET SDK služby Azure Search cílí na nejnovější obecně dostupnou verzi rozhraní REST API služby Azure Search, konkrétně 2017-11-11. To umožňuje používat nové funkce služby Azure Search z aplikace .NET, včetně následujících:

  • Synonyma.
  • Nyní můžete programátorsky přistupovat k upozorněním v historii provádění indexeru (další podrobnosti najdete v Warning vlastnostech IndexerExecutionResult v dokumentaci .NET).
  • Podpora pro .NET Core 2
  • Nová struktura balíčků podporuje pouze ty části sady SDK, které potřebujete (podrobnosti najdete v části Zásadní změny ve verzi 5 ).

Postup upgradu

Nejprve aktualizujte referenční informace NuGet pro Microsoft.Azure.Search pomocí konzoly Správce balíčků NuGet nebo kliknutím pravým tlačítkem myši na odkazy na projekt a výběrem možnosti Spravovat balíčky NuGet... v sadě Visual Studio.

Jakmile NuGet stáhne nové balíčky a jejich závislosti, znovu sestavte projekt. Podle toho, jak je váš kód strukturován, se může úspěšně sestavit. Pokud ano, jste připraveni jít!

Pokud se sestavení nezdaří, měla by se zobrazit chyba sestavení podobná této:

The name 'SuggesterSearchMode' does not exist in the current context

Dalším krokem je oprava této chyby sestavení. Podrobnosti o příčinách chyby a jeho opravě najdete v části Zásadní změny ve verzi 5 .

Upozorňujeme, že kvůli změnám v balení sady .NET SDK služby Azure Search musíte aplikaci znovu sestavit, aby bylo možné použít verzi 5. Tyto změny jsou podrobně popsány v zásadních změnách ve verzi 5.

Mohou se zobrazit další upozornění na sestavení týkající se zastaralých metod nebo vlastností. Upozornění budou obsahovat pokyny k tomu, co použít místo zastaralé funkce. Pokud například vaše aplikace tuto metodu IndexingParametersExtensions.DoNotFailOnUnsupportedContentType používá, měli byste se zobrazit upozornění"Toto chování je teď ve výchozím nastavení povolené, takže volání této metody už není nutné."

Jakmile opravíte chyby nebo upozornění sestavení, můžete v aplikaci provádět změny, abyste mohli využívat nové funkce, pokud chcete. Nové funkce v sadě SDK jsou podrobně popsány v části Co je nového ve verzi 5.

Zásadní změny ve verzi 5

Nová struktura balíčku

Nejvýznamnější zásadní změnou verze 5 je, že Microsoft.Azure.Search sestavení a jeho obsah byly rozděleny do čtyř samostatných sestavení, která jsou nyní distribuována jako čtyři samostatné balíčky NuGet:

  • Microsoft.Azure.Search: Jedná se o metabal, který zahrnuje všechny ostatní balíčky Azure Search jako závislosti. Pokud upgradujete ze starší verze sady SDK, stačí, když tento balíček upgradujete a znovu sestavíte, abyste mohli začít používat novou verzi.
  • Microsoft.Azure.Search.Data: Tento balíček použijte, pokud vyvíjíte aplikaci .NET pomocí služby Azure Search a potřebujete pouze dotazovat nebo aktualizovat dokumenty v indexech. Pokud potřebujete také vytvořit nebo aktualizovat indexy, mapy synonym nebo jiné prostředky na úrovni služby, použijte místo toho balíček Microsoft.Azure.Search.
  • Microsoft.Azure.Search.Service: Tento balíček použijte, pokud vyvíjíte automatizaci v .NET pro správu indexů služby Azure Search, map synonym, indexerů, zdrojů dat nebo jiných prostředků na úrovni služby. Pokud potřebujete dotazovat nebo aktualizovat dokumenty jenom v indexech, použijte místo toho balíček Microsoft.Azure.Search.Data. Pokud potřebujete všechny funkce služby Azure Search, použijte místo toho balíček Microsoft.Azure.Search.
  • Microsoft.Azure.Search.Common: Běžné typy vyžadované knihovnami .NET služby Azure Search. Tento balíček byste neměli používat přímo ve vaší aplikaci; Slouží pouze jako závislost.

Tato změna je technicky zásadní, protože mnoho typů bylo přesunuto mezi sestaveními. Proto je opětovné sestavení aplikace nezbytné k upgradu na verzi 5 sady SDK.

Ve verzi 5 existuje malý počet dalších zásadních změn, které můžou kromě opětovného sestavení aplikace vyžadovat změny kódu.

Přepnout na navrhovatele

Konstruktor Suggester již nemá parametr enum pro SuggesterSearchMode. Tento výčt měl pouze jednu hodnotu a byl proto redundantní. Pokud se v důsledku toho zobrazí chyby sestavení, jednoduše odeberte odkazy na parametr SuggesterSearchMode.

Odebrání zastaralých členů

Mohou se zobrazit chyby sestavení související s metodami nebo vlastnostmi, které byly v dřívějších verzích označeny jako zastaralé a následně odebrány ve verzi 5. Pokud narazíte na takové chyby, tady je postup, jak je vyřešit:

  • Pokud jste používali metodu IndexingParametersExtensions.IndexStorageMetadataOnly , použijte SetBlobExtractionMode(BlobExtractionMode.StorageMetadata) místo toho.
  • Pokud jste používali metodu IndexingParametersExtensions.SkipContent , použijte SetBlobExtractionMode(BlobExtractionMode.AllMetadata) místo toho.

Odebrané funkce ve verzi Preview

Pokud upgradujete z verze 4.0 preview na verzi 5, mějte na paměti, že podpora parsování polí JSON a CSV pro indexery objektů blob byla odebrána, protože tyto funkce jsou stále ve verzi Preview. Konkrétně byly odebrány následující metody IndexingParametersExtensions třídy:

  • ParseJsonArrays
  • ParseDelimitedTextFiles

Pokud má vaše aplikace pevnou závislost na těchto funkcích, nebudete moct upgradovat na verzi 5 sady .NET SDK služby Azure Search. Můžete dál používat verzi 4.0-preview. Mějte však na paměti, že nedoporučujeme používat sady Preview SDK v produkčních aplikacích. Funkce ve verzi Preview jsou určené jenom pro vyhodnocení a můžou se změnit.

Závěr

Pokud potřebujete další podrobnosti o použití .NET SDK Azure Search, podívejte se na návod .NET.

Vítáme vaši zpětnou vazbu k SDK. Pokud narazíte na problémy, neváhejte nás požádat o pomoc na Stack Overflow. Pokud zjistíte chybu, můžete problém podat v úložišti GitHub sady Azure .NET SDK. Ujistěte se, že před názvem vašeho problému bude předpona "[Azure Search]".

Děkujeme, že jste používali Azure Search!