OrderBy - это метод расширения из LINQ (не драйвера C #), и он имеет две перегрузки.В одной вы предоставляете лямбду для извлечения ключа, по которому вы хотите отсортировать, а в другой вы дополнительно предоставляете лямбду, которая сравнивает два ключа.
Вот пример, который сортирует BsonArray на основе значения встроенногоэлемент с именем "x":
var originalTags = new BsonArray {
new BsonDocument { { "_id", 1 }, { "x", 2 } },
new BsonDocument { { "_id", 2 }, { "x", 1 } }
};
var newTags = originalTags.OrderBy(t => t.AsBsonDocument["x"]);
foreach (var tag in newTags) {
Console.WriteLine(tag.ToJson());
}