anchor.diff:  let recordFields t = 
       FSharpType.GetRecordFields t |> Array.map (fun p -> p.Name)
   
  +/// Maps a datarecord to a record 'a using an optional prefix for record field names
   let asRecord<'a> = 
       let createRecord = FSharpValue.PreComputeRecordConstructor(typeof<'a>)
       let make values = (createRecord values) :?> 'a
  
positive.code:         | x -> x
      cmd.Parameters.Add par |> ignore
  
  let createCommand (cmgr: ConnectionManager) = 
      let create,dispose,tx = cmgr
      let conn = create()
  
negative.code: 
  /// Gets all field names from a record type formatted with an alias.
  /// E.g. with a field "id" and alias "a", returns "a.id a_id"
  let recordFieldsAlias ty = 
      let fields = recordFields ty
      fun alias ->
          fields |> fieldAlias alias |> sjoin ","
  