Пример #1
0
        internal KnowledgeArticleModel GetKnowledgeForAllType(string shortDesc)
        {
            var            knend   = knEndPoint + $"short_descriptionLIKE{shortDesc}";
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(knend);

            request.ContentType = "application/xml";
            request.Method      = "GET";
            NetworkCredential cred = new NetworkCredential(adminName, password);

            request.Credentials = cred;
            request.Timeout     = 999999;
            request.KeepAlive   = true;



            HttpWebResponse webResponse = request.GetResponse() as HttpWebResponse;

            var knArticle = new KnowledgeArticleModel();

            try
            {
                using (Stream webStream = webResponse.GetResponseStream())
                {
                    if (webStream != null)
                    {
                        using (StreamReader responseReader = new StreamReader(webStream))
                        {
                            var response     = responseReader.ReadToEnd();
                            var selectedNode = JObject.Parse(response).SelectToken("result").FirstOrDefault();
                            if (selectedNode != null)
                            {
                                knArticle.ShortDescription = selectedNode["short_description"].ToString();
                                knArticle.Category         = selectedNode["category"].ToString();
                                knArticle.KnowledgeBaseURL = knowledgeUserViewUrl + selectedNode["sys_id"].ToString();
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                throw;
            }
            return(knArticle);
        }
Пример #2
0
        internal string GetGroupName(string urlEndPoint, string sysID)
        {
            if (string.IsNullOrWhiteSpace(sysID))
            {
                return(string.Empty);
            }
            HttpWebRequest request = (HttpWebRequest)WebRequest.Create(urlEndPoint);

            request.ContentType = "application/json";
            request.Method      = "GET";
            NetworkCredential cred = new NetworkCredential(adminName, password);

            request.Credentials = cred;
            HttpWebResponse webResponse = request.GetResponse() as HttpWebResponse;

            var knArticle = new KnowledgeArticleModel();

            try
            {
                using (Stream webStream = webResponse.GetResponseStream())
                {
                    if (webStream != null)
                    {
                        using (StreamReader responseReader = new StreamReader(webStream))
                        {
                            var response     = responseReader.ReadToEnd();
                            var selectedNode = JObject.Parse(response).SelectToken("result").FirstOrDefault();
                            if (selectedNode != null)
                            {
                                var groupName = selectedNode["name"].ToString();
                                return(groupName);
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                throw;
            }
            return(string.Empty);
        }
Пример #3
0
        /// <summary>
        /// Get Knowledge information from service now
        /// </summary>
        /// <param name="category"></param>
        /// <param name="topicName"></param>
        /// <param name="shortDesc"></param>
        /// <returns></returns>
        internal List <KnowledgeArticleModel> GetKnowledgeInformation(string category, string topicName, string shortDesc)
        {
            var            knendpoint = knEndPoint + $"category={category}^topic={topicName}^short_descriptionLIKE{shortDesc}";
            HttpWebRequest request    = (HttpWebRequest)WebRequest.Create(knendpoint);

            request.ContentType = "application/json";
            request.Method      = "GET";
            NetworkCredential cred = new NetworkCredential(adminName, password);

            request.Credentials = cred;
            HttpWebResponse webResponse = request.GetResponse() as HttpWebResponse;

            var knArticle = new List <KnowledgeArticleModel>();

            try
            {
                using (Stream webStream = webResponse.GetResponseStream())
                {
                    if (webStream != null)
                    {
                        using (StreamReader responseReader = new StreamReader(webStream))
                        {
                            var response     = responseReader.ReadToEnd();
                            var selectedNode = JObject.Parse(response).SelectToken("result").Take(2).ToList();
                            foreach (var item in selectedNode)
                            {
                                var knModel = new KnowledgeArticleModel();
                                knModel.ShortDescription = item["short_description"].ToString();
                                knModel.KnowledgeBaseURL = knowledgeUserViewUrl + item["sys_id"].ToString();
                                knArticle.Add(knModel);
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                throw;
            }
            return(knArticle);
        }