Exemple #1
0
        public void SerializeCollection()
        {
            var novels = new Novel[] {
                new Novel {
                    Author    = "ジェイムズ・P・ホーガン",
                    Title     = "星を継ぐもの",
                    Published = 1977,
                },
                new Novel {
                    Author    = "H・G・ウェルズ",
                    Title     = "タイム・マシン",
                    Published = 1895,
                },
            };
            var novelCollection = new NovelCollection {
                Novels = novels
            };

            using (var writer = XmlWriter.Create("novels.xml")) {
                var serializer = new XmlSerializer(novelCollection.GetType());
                serializer.Serialize(writer, novelCollection);
            }

            Display("novels.xml");


            // 以下は、p.310下部のコード。
            // このコードを実行し、本の説明と同じ結果にするには、Novelistクラス(Novelist.cs)に付加した
            // 4つすべての属性をコメントアウトして単独で実行してください。
            //
            //var novelist = new Novelist {
            //    Name = "アーサー・C・クラーク",
            //    Masterpieces = new string[] {
            //        "2001年宇宙の旅",
            //        "幼年期の終り",
            //    }
            //};
            //using (var writer = XmlWriter.Create("novelist.xml")) {
            //    var serializer = new XmlSerializer(novelist.GetType());
            //    serializer.Serialize(writer, novelist);
            //}
            //
            //Display("novelist.xml");
        }
Exemple #2
0
        public void SerializeCollection()
        {
            var novels = new Novel[] {
                new Novel {
                    Author    = "제임스 P. 호건",
                    Title     = "별의 계승자",
                    Published = 1977,
                },
                new Novel {
                    Author    = "허버트 조지 웰즈",
                    Title     = "타임머신",
                    Published = 1895,
                },
            };
            var novelCollection = new NovelCollection {
                Novels = novels
            };

            using (var writer = XmlWriter.Create("novels.xml")) {
                var serializer = new XmlSerializer(novelCollection.GetType());
                serializer.Serialize(writer, novelCollection);
            }

            Display("novels.xml");


            // 다음은 p.310 아래쪽에 나온 코드입니다.
            // 이 코드를 실행했을 때 책에 나온 설명과 일치되도록 하려면 Novelist 클래스(Novelist.cs)에 추가한
            // 속성 네 개를 모두 주석 처리하고 단독으로 실행하기 바랍니다.
            //
            //var novelist = new Novelist {
            //    Name = "아서 C. 클라크",
            //    Masterpieces = new string[] {
            //        " 2001 스페이스 오디세이",
            //        " 유년기의 끝",
            //    }
            //};
            //using (var writer = XmlWriter.Create("novelist.xml")) {
            //    var serializer = new XmlSerializer(novelist.GetType());
            //    serializer.Serialize(writer, novelist);
            //}
            //
            //Display("novelist.xml");
        }