Ereignisse
17. März, 21 Uhr - 21. März, 10 Uhr
Nehmen Sie an der Meetup-Serie teil, um skalierbare KI-Lösungen basierend auf realen Anwendungsfällen mit Mitentwicklern und Experten zu erstellen.
Jetzt registrierenDieser Browser wird nicht mehr unterstützt.
Führen Sie ein Upgrade auf Microsoft Edge aus, um die neuesten Funktionen, Sicherheitsupdates und technischen Support zu nutzen.
GILT FÜR: NoSQL
In diesem Artikel wird erläutert, wie Sie verschiedene Sitzungstokenformate konvertieren, um die Kompatibilität zwischen den SDK-Versionen sicherzustellen.
Hinweis
Standardmäßig verfolgt das SDK das Sitzungstoken automatisch und verwendet das aktuelle Sitzungstoken. Weitere Informationen finden Sie unter Verwenden von Sitzungstoken. Die Anweisungen in diesem Artikel gelten nur unter den folgenden Bedingungen:
Es gibt zwei Sitzungstokenformate: Einfach und Vektor. Diese zwei Formate sind nicht austauschbar, sodass das Format bei der Übergabe an die Clientanwendung mit unterschiedlichen Versionen konvertiert werden muss.
Ein einfaches Sitzungstoken weist das folgende Format auf: {pkrangeid}:{globalLSN}
Ein Vektorsitzungstoken weist das folgende Format auf: {pkrangeid}:{Version}#{GlobalLSN}#{RegionId1}={LocalLsn1}#{RegionId2}={LocalLsn2}....#{RegionIdN}={LocalLsnN}
Um ein Sitzungstoken mit .NET SDK V1 an den Client zu übergeben, verwenden Sie das Sitzungstokenformat Einfach. Verwenden Sie z. B. den folgenden Beispielcode, um das Format zu konvertieren.
private static readonly char[] SegmentSeparator = (new[] { '#' });
private static readonly char[] PkRangeSeparator = (new[] { ':' });
// sessionTokenToConvert = session token from previous response
string[] items = sessionTokenToConvert.Split(PkRangeSeparator, StringSplitOptions.RemoveEmptyEntries);
string[] sessionTokenSegments = items[1].Split(SessionTokenHelpers.SegmentSeparator, StringSplitOptions.RemoveEmptyEntries);
string sessionTokenInSimpleFormat;
if (sessionTokenSegments.Length == 1)
{
// returning the same token since it already has the correct format
sessionTokenInSimpleFormat = sessionTokenToConvert;
}
else
{
long version = 0;
long globalLSN = 0;
if (!long.TryParse(sessionTokenSegments[0], out version)
|| !long.TryParse(sessionTokenSegments[1], out globalLSN))
{
throw new ArgumentException("Invalid session token format", sessionTokenToConvert);
}
sessionTokenInSimpleFormat = string.Format("{0}:{1}", items[0], globalLSN);
}
Um ein Sitzungstoken mit .NET SDK V2 an den Client zu übergeben, verwenden Sie das Sitzungstokenformat Vektor. Verwenden Sie z. B. den folgenden Beispielcode, um das Format zu konvertieren.
private static readonly char[] SegmentSeparator = (new[] { '#' });
private static readonly char[] PkRangeSeparator = (new[] { ':' });
// sessionTokenToConvert = session token from previous response
string[] items = sessionTokenToConvert.Split(PkRangeSeparator, StringSplitOptions.RemoveEmptyEntries);
string[] sessionTokenSegments = items[1].Split(SegmentSeparator, StringSplitOptions.RemoveEmptyEntries);
string sessionTokenInVectorFormat;
if (sessionTokenSegments.Length == 1)
{
long globalLSN = 0;
if (long.TryParse(sessionTokenSegments[0], out globalLSN))
{
sessionTokenInVectorFormat = string.Format("{0}:-2#{1}", items[0], globalLSN);
}
else
{
throw new ArgumentException("Invalid session token format", sessionTokenToConvert);
}
}
else
{
// returning the same token since it already has the correct format
sessionTokenInVectorFormat = sessionTokenToConvert;
}
Lesen Sie die folgenden Artikel:
Ereignisse
17. März, 21 Uhr - 21. März, 10 Uhr
Nehmen Sie an der Meetup-Serie teil, um skalierbare KI-Lösungen basierend auf realen Anwendungsfällen mit Mitentwicklern und Experten zu erstellen.
Jetzt registrierenSchulung
Lernpfad
Conectar-se ao Azure Cosmos DB for NoSQL com o SDK - Training
Conectar-se ao Azure Cosmos DB for NoSQL com o SDK
Zertifizierung
Microsoft Certified: Azure Cosmos DB Developer Specialty - Certifications
Escreva consultas eficientes, crie políticas de indexação, gerencie e provisione recursos na API e no SDK do SQL com o Microsoft Azure Cosmos DB.