/// <summary> /// Checks whether knowledge base need to be published. /// </summary> /// <param name="kbId">Knowledgebase ID.</param> /// <returns>boolean variable to publish or not.</returns> public async Task <bool> GetPublishStatusAsync(string kbId) { KnowledgebaseDTO qnaDocuments = await this.qnaMakerClient.Knowledgebase.GetDetailsAsync(kbId); if (qnaDocuments != null && qnaDocuments.LastChangedTimestamp != null && qnaDocuments.LastPublishedTimestamp != null) { return(DateTime.Compare(Convert.ToDateTime(qnaDocuments.LastChangedTimestamp), Convert.ToDateTime(qnaDocuments.LastPublishedTimestamp)) > 0); } else { return(true); } }
/// <summary> /// Checks whether knowledge base need to be published. /// </summary> /// <param name="kbId">Knowledgebase ID.</param> /// <returns>boolean variable to publish or not.</returns> public async Task <bool> GetPublishStatusAsync(string kbId) { KnowledgebaseDTO knowledgebaseDetails = await this.qnaMakerClient.Knowledgebase.GetDetailsAsync(kbId); if (knowledgebaseDetails.LastChangedTimestamp != null && knowledgebaseDetails.LastPublishedTimestamp != null) { return(Convert.ToDateTime(knowledgebaseDetails.LastChangedTimestamp) > Convert.ToDateTime(knowledgebaseDetails.LastPublishedTimestamp)); } else { return(true); } }
/// <summary> /// Get knowledgebase published information. /// </summary> /// <param name="knowledgeBaseId">Knowledgebase id.</param> /// <returns>A <see cref="Task"/> of type bool where true represents knowledgebase has published atleast once while false indicates that knowledgebase has not published yet.</returns> public async Task <bool> GetInitialPublishedStatusAsync(string knowledgeBaseId) { KnowledgebaseDTO qnaDocuments = await this.qnaMakerClient.Knowledgebase.GetDetailsAsync(knowledgeBaseId).ConfigureAwait(false); return(!string.IsNullOrEmpty(qnaDocuments.LastPublishedTimestamp)); }