TeamMentor.CoreLib.TM_Xml_Database_VirtualArticle_ExtensionMethods.getExternalTeamMentorArticle_if_MappingExists C# (CSharp) Method

getExternalTeamMentorArticle_if_MappingExists() public static method

public static getExternalTeamMentorArticle_if_MappingExists ( this tmXmlDatabase, System.Guid id ) : TeamMentor_Article
tmXmlDatabase this
id System.Guid
return TeamMentor_Article
        public static TeamMentor_Article getExternalTeamMentorArticle_if_MappingExists(this TM_Xml_Database tmXmlDatabase, Guid id)
        {
            try
            {
                var virtualArticle = tmXmlDatabase.virtualArticle(id);
                if (virtualArticle.notNull())
                {
                    switch (virtualArticle.Action)
                    {
                        case "ExternalArticle":
                            {

                                var articleUri = "{0}/raw/{1}".format(virtualArticle.TM_Server, virtualArticle.Target_Id).uri();
                                var articleXml = articleUri.get_Html();
                                var externalArticle = articleXml.deserialize<TeamMentor_Article>(false);
                                return externalArticle;
                            }
                        case "ExternalService":
                            {
                                return virtualArticle.createArticle_from_ExternalServiceData();
                            }
                    }

                }
            }
            catch (Exception ex)
            {
                ex.log("in getExternalTeamMentorArticle_if_MappingExists");
            }
            return null;
        }