Я использую драйвер MongoDB C ++ (версия 3.4.0 для справки). Мне нужно получить _id
данного документа. Сначала я беру документ:
bsoncxx::stdx::optional<bsoncxx::document::value> sub = conn["mydb"]["csubs"].find_one(...);
, чтобы получить доступ к _id
следующим образом:
sub->view()["_id"].get_oid();
Пока все хорошо.
Как Насколько я прочитал в драйвере API этот объект имеет тип types::b_oid
. Однако мне нужно получить его как std::string
.
Удивительно, но я не нашел ни одного метода в документации types::b_oid
класса для преобразования строк. Я имею в виду типичный метод to_string()
, поэтому я могу вызвать что-то вроде:
sub->view()["_id"].get_oid().to_string();
Возможно, я что-то упускаю (потому что сценарий использования кажется слишком очевидным :), но через некоторое время проверяет документацию Я не нашел решения. Любая помощь приветствуется!