public static string EncodeContinuationTokenV2(string[] continuationToken) { if (continuationToken == null || (int)continuationToken.Length <= 0) { throw new ArgumentException("The continuation token is null or has no parts.", "continuationToken"); } StringBuilder stringBuilder = new StringBuilder(); stringBuilder.Append(2); stringBuilder.Append('!'); UTF8Encoding uTF8Encoding = new UTF8Encoding(); string empty = string.Empty; string[] strArrays = continuationToken; for (int i = 0; i < (int)strArrays.Length; i++) { string str = strArrays[i]; empty = string.Concat(empty, string.Format("{0:D6}!{1}!", str.Length, str)); } string base64String = Convert.ToBase64String(uTF8Encoding.GetBytes(empty)); string str1 = ContinuationTokenParser.UrlCustomEscapeBase64String(base64String); stringBuilder.Append(str1.Length); stringBuilder.Append('!'); stringBuilder.Append(str1); return(stringBuilder.ToString()); }
public static string EncodeContinuationTokenV1(string continuationToken) { StringBuilder stringBuilder = new StringBuilder(); stringBuilder.Append(1); stringBuilder.Append('!'); UTF8Encoding uTF8Encoding = new UTF8Encoding(); string base64String = Convert.ToBase64String(uTF8Encoding.GetBytes(continuationToken.ToString())); string str = ContinuationTokenParser.UrlCustomEscapeBase64String(base64String); stringBuilder.Append(str.Length); stringBuilder.Append('!'); stringBuilder.Append(str); return(stringBuilder.ToString()); }