No hay diferencia cuando establece un valor de cadena. Los métodos envueltos son necesarios cuando trabaja con tipos complejos:clases, listas, etc. (que no es BsonValue
). Simplemente convierten correctamente los objetos al tipo BsonValue.
Pequeño ejemplo:
Con Set no puedes hacer lo siguiente:
var item = new MyDemo();
Update.Set("Item", item)
Tienes que usar el método Wrapped o la extensión ToBsonDocument():
var item = new MyDemo();
Update.SetWrapped("Item", item)
¡Eso es!
Una nota, el controlador y la mayoría de las piezas alrededor de mongodb son de código abierto. Así que no es gran cosa mirar :)