Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- et makeAccount i =
- let entity = Entity "account"
- entity.Item "name" <- sprintf "Account%i" i
- entity
- let makeCreateRequest e =
- let cr = CreateRequest ()
- cr.Parameters.Item "Target" <- e
- cr
- let requests =
- [1..100]
- |> Seq.map makeAccount
- |> Seq.map makeCreateRequest
- let chunkBy chunkSize (source: seq<_>) =
- source
- |> Seq.indexed
- |> Seq.groupBy (fun (i, _) -> i / chunkSize)
- |> Seq.map (fun (_, x) ->
- x |> Seq.map snd)
- let toOrganizationRequestCollection (requests: seq<OrganizationRequest>) =
- let organizationRequestCollection = OrganizationRequestCollection ()
- organizationRequestCollection.AddRange requests
- organizationRequestCollection
- let executePaged limit (request: OrganizationRequest) =
- request.Parameters.Item "Requests" :?> seq<OrganizationRequest>
- |> chunkBy limit
- |> Seq.map (fun x ->
- request.Parameters.Item "Requests" <- toOrganizationRequestCollection x
- serviceProxy.Execute request)
- let fuckingDoIt =
- let etr = ExecuteTransactionRequest ()
- etr.Requests <- (requests |> Seq.cast<OrganizationRequest> |> toOrganizationRequestCollection)
- etr.ReturnResponses <- Nullable true
- etr
- |> executePaged 30
- |> Seq.toArray
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement