コード例 #1
0
            /// <summary>
            /// ContentsItemの保存を行います。
            /// </summary>
            /// <param name="info"></param>
            public override void SaveContentsItem(XmlContentsItemWriteInfo info)
            {
                XmlWriter       writer = info.Writer;
                XmlContentsItem item   = info.Item;

                writer.WriteString(item.Value.ToString());
            }
コード例 #2
0
        /// <summary>
        /// ContentsItemを保存します。
        /// </summary>
        /// <param name="info"></param>
        public override void SaveContentsItem(XmlContentsItemWriteInfo info)
        {
            XmlWriter writer = info.Writer;
            XmlContentsItemProvider provider = info.ItemProvider;
            XmlContentsItem         item     = info.Item;

            writer.WriteStartElement(provider.ItemRootElement);
            writer.WriteAttributeString(provider.ItemRootNameAttribute, item.Name);
            writer.WriteAttributeString(provider.ItemRootTypeAttribute, item.Type.ToString());
            //TODO:ItemのSave
            //item.Save(writer);
            XmlContentsItemWriter itemWriter = this.CreateItemWriter(item.Type);

            itemWriter.SaveContentsItem(info);


            writer.WriteEndElement();
        }
コード例 #3
0
            /// <summary>
            /// ContentsItemの保存を行います。
            /// </summary>
            /// <param name="info"></param>
            public override void SaveContentsItem(XmlContentsItemWriteInfo info)
            {
                XmlWriter                writer    = info.Writer;
                XmlContentsItem          item      = info.Item;
                ContainerXmlContentsItem container = (ContainerXmlContentsItem)item;

                writer.WriteElementString(container.ItemCountElement, container.Items.Count.ToString());
                foreach (XmlContentsItem item1 in container.Items.Values)
                {
                    XmlContentsItemWriteInfo itemInfo = new XmlContentsItemWriteInfo()
                    {
                        Writer       = info.Writer,
                        ItemProvider = info.ItemProvider,
                        Item         = item1
                    };
                    this.ParentWriter.SaveContentsItem(itemInfo);
                    //this.m_ItemProvider.Save(writer, item1);
                }
            }
コード例 #4
0
        /// <summary>
        /// Contentsを保存します。
        /// </summary>
        /// <param name="info"></param>
        public override void SaveContents(XmlContentsWriteInfo info)
        {
            XmlWriter   writer   = info.Writer;
            XmlContents contents = info.Contents;

            writer.WriteStartElement(contents.ContentsRootElement);
            writer.WriteAttributeString(contents.ContentsRootNameAttribute, contents.Name);
            writer.WriteAttributeString(contents.ContentsRootCountAttribute, contents.RootItem.Items.Count.ToString());
            foreach (XmlContentsItem item in contents.RootItem.Items.Values)
            {
                XmlContentsItemWriteInfo itemInfo = new XmlContentsItemWriteInfo()
                {
                    Writer       = writer,
                    ItemProvider = contents.ItemProvider,
                    Item         = item
                };
                this.SaveContentsItem(itemInfo);
                //this.m_ItemProvider.Save(writer, item);
            }
            writer.WriteEndElement();
        }
コード例 #5
0
 /// <summary>
 /// 派生クラスでオーバーライドされると、ContentsItemの保存を行うメソッドを定義します。
 /// </summary>
 /// <param name="info"></param>
 public abstract void SaveContentsItem(XmlContentsItemWriteInfo info);