/// <summary> /// The update. /// </summary> /// <typeparam retval="X">Document to match</typeparam> /// <typeparam retval="U">Value document</typeparam> /// <param retval="matchDocument">The match document.</param> /// <param retval="valueDocument">The value document.</param> /// <param retval="updateMultiple">The update multiple.</param> /// <param retval="upsert">The upsert.</param> /// <exception cref="NotSupportedException"> /// </exception> public void Update <X, U>(X matchDocument, U valueDocument, bool updateMultiple, bool upsert) { AssertUpdatable(); var ops = UpdateOption.None; if (updateMultiple) { ops |= UpdateOption.MultiUpdate; } if (upsert) { ops |= UpdateOption.Upsert; } var um = new UpdateMessage <X, U>(_connection, FullyQualifiedName, ops, matchDocument, valueDocument); um.Execute(); }