//public static DataTable ToDataTable(IEnumerable<BsonDocument> documents)
 public static DataTable ToDataTable(IEnumerable<BsonValue> values, DataTable dt = null)
 {
     //BsonDocumentsToDataTable_v2 documentsToDataTable = new BsonDocumentsToDataTable_v2(documents);
     BsonDocumentsToDataTable_v2 documentsToDataTable = new BsonDocumentsToDataTable_v2(values);
     if (dt == null)
         dt = new DataTable();
     documentsToDataTable._dt = dt;
     documentsToDataTable.ToDataTable();
     return dt;
 }
 //public static DataTable ToDataTable(BsonDocument document)
 public static DataTable ToDataTable(BsonValue value, DataTable dt = null)
 {
     //BsonDocumentsToDataTable_v2 documentsToDataTable = new BsonDocumentsToDataTable_v2(new BsonDocument[] { document });
     BsonDocumentsToDataTable_v2 documentsToDataTable = new BsonDocumentsToDataTable_v2(new BsonValue[] { value });
     if (dt == null)
         dt = new DataTable();
     documentsToDataTable._dt = dt;
     documentsToDataTable.ToDataTable();
     return dt;
 }
 public BsonArrayToDataTable(BsonDocumentsToDataTable_v2 parent, string name, BsonArray array)
 {
     _parent = parent;
     _name = name;
     _arrayStack.Push(array.GetEnumerator());
 }