コード例 #1
0
        /// <summary>
        /// Queries the Google Health Profile Register feed for the list of notices. This
        /// is for ClientLogin related queries.
        /// </summary>
        /// <param name="profileId">The profile to query against.</param>
        /// <returns>The list of notices available on this profile.</returns>
        public List <Notice> GetNotices(string profileId)
        {
            HealthQuery query = new HealthQuery(RegisterFeed + profileId);

            query.Digest = true;
            HealthFeed    feed    = this.Query(query);
            List <Notice> notices = new List <Notice>();

            foreach (AtomEntry entry in feed.Entries)
            {
                notices.Add(Notice.FromAtomEntry(entry));
            }
            return(notices);
        }
コード例 #2
0
        private void PostNoticeUrl(Notice notice, string url)
        {
            AtomEntry entry = new AtomEntry();

            entry.Title.Text      = notice.Subject;
            entry.Content.Content = notice.Subject;
            entry.Content.Type    = notice.ContentType;

            if (notice.CareRecord != null)
            {
                XmlSerializer serializer = new XmlSerializer(typeof(ContinuityOfCareRecord));
                using (StringWriter strWriter = new StringWriter())
                {
                    XmlTextWriter writer = new XmlTextWriter(new StringWriter());
                    serializer.Serialize(writer, notice.CareRecord);

                    XmlDocument doc = new XmlDocument();
                    doc.LoadXml(strWriter.ToString());
                    entry.ExtensionElements.Add(new XmlExtension(doc.DocumentElement));
                }
            }

            notice = Notice.FromAtomEntry(this.Insert(new Uri(url), entry));
        }