C # конвертировать словарьбайт [] - PullRequest
0 голосов
/ 04 октября 2019

У меня вызов API, который возвращает Dictionary<int, byte[]>

var receiptData 
= await GetAsync($"Services/GenerateReceiptForPrint?
transactionId={transactionId}");

receiptData типа Dictionary<int, byte[]>, и я хочу получить byte[] этого.

1 Ответ

0 голосов
/ 04 октября 2019

A Dictionary - это коллекция Keys и Values. См .:

https://docs.microsoft.com/en-us/dotnet/api/system.collections.generic.dictionary-2?view=netframework-4.8

В вашем случае ключи int s, а значения - байтовые массивы.

Чтобы получить первое значение изсловарь, в котором должна быть только одна запись, вы должны ссылаться на эту запись по ее ключу;что-то вроде:

if(receiptData.Count() != 1)
    throw new Exception($"receiptData Dictionary should have exactly 1 entry, but has {receiptData.Count()}");
var myByteArray = receiptData[0] // gets the value of the first entry in the dictionary

Но что, если в словаре более одной записи?

Вам следует внимательно прочитать справочный документ Microsoft.

...