While getting user worklist faced performace problem - 2-3sec to get user's worklist (or almost any other request to get task info).
Code I use is like this
- Connection = New Connection
- Connection.Open(K2ServerName)
- Connection.ImpersonateUser(UserLogin)
- worklist = ImpersonatedConnection.OpenWorklist
- Dim res = New List(Of dtoK2Task)
- If Worklist.Count > 0 Then
- Try
- Dim wli As SourceCode.Workflow.Client.WorklistItem
- For Each wli In UserWorklist
- res.Add(New dtoK2Task(wli))
- Next
- End If
- Return res
Longest operation (99% of all time) is opening WorkList of Connection.
Am i doing something wrong?
Any other ways to get task/worklist info?