private async Task <CourseWSPortTypeClient> GetCourseClient() { await Activate(); var endpoint = new EndpointAddress($"{BaseUrl}/Course.WS"); var course = new CourseWSPortTypeClient(_defaultBinding, endpoint); course.Endpoint.Behaviors.Add( new WsSecurityBehavior(new MessageInspector(new SecurityHeader("session", _sessionKey)))); await course.initializeCourseWSAsync(false); return(course); }
public async Task <CategoryVO[]> BbCourseCategories(CategoryFilter filter) { _tryCount += 1; if (_tryCount == 3) { await ResetConnection(); _crseClient = null; } if (_crseClient == null) { _crseClient = await GetCourseClient(); } var crseVo = await _crseClient.getCategoriesAsync(filter); _tryCount = 0; return(crseVo.@return); }
public async Task <GroupVO[]> BbWorkGroups(string courseId, GroupFilter filter) { _tryCount += 1; if (_tryCount == 3) { await ResetConnection(); _crseClient = null; } if (_crseClient == null) { _crseClient = await GetCourseClient(); } var wkGrpVo = await _crseClient.getGroupAsync(courseId, filter); _tryCount = 0; return(wkGrpVo.@return); }