zillionプロジェクト開発ブログ System.Versionがシリアライズできない!! 忍者ブログ

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

 ちょっとだけ、ツボったのでメモ。

public static class Program{
     public static void Main(){
     //XMLシリアライザ
     XMLSerializer serializer=new XMLSerializer(typeof(ProjectData));
     //ファイル用のストリーム
     FileStream fs=new FileStream(@"test.xml",FileMode.Create,FileAccess.Write,FileShare.None);
     //シリアライズするもの
     ProjectData obj=new ProjectData(new Version(1,0,0,0));
     serializer.Serialize(fs,obj);
     }
}

public class ProjectData{

     //シリアライズ用のコンストラクタ
     public ProjectData(){}
     //普通のコンストラクタ
     public ProjectData(Version ver){
     this.ProjectVersion=ver;
     }

     public Version ProjectVersion{get;set;}
}
 
しかし、こうすると、
<ProjectData>
     <ProjectVersion/>
</PrjectData>
となってしまう。なんでだろうと悩んでいたら、XMLシリアライザは、読み取り専用のプロパティはシリアライズされないという事、これをシリアライズするなら、また別の方法を考えなければならない。
ParseやToStringメソッドを使えば、文字列の形式にしておいて、その情報を使う時だけ直せばいいかもしれない。

拍手[0回]

PR

◎ Post your Comment
Name
Title
E-mail
URL
Comment
Pass   Vodafone絵文字 i-mode絵文字 Ezweb絵文字
◎ この記事へのトラックバック
Trackback URL
◎ カウンター
◎ カレンダー
04 2017/05 06
S M T W T F S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31
◎ 最新CM
[10/24 名無しの権兵衛]
[08/30 名無しの権兵衛]
[08/14 no name no future]
[08/05 ゲームサークルEaSt]
[07/28 リオウ]
◎ プロフィール
HN:
kyasbal
年齢:
22
性別:
男性
誕生日:
1994/09/22
職業:
人間
趣味:
趣味ねぇ~~う~ん・・・
◎ ブログ内検索
◎ バーコード
◎ アクセス解析
◎ フリーエリア
◎ フリーエリア
Script: Ninja Blog 
Design by: タイムカプセル
忍者ブログ 
[PR]