C#
1public class Setting 2{ 3 /// プロパティ 4 public string Foo { get; set; } 5 public string Bar { get; set; } 6 7 ///コンストラクタ 8 public Setting() 9 { 10 var xmlSerializer = new XmlSerializer(typeof(Setting)); 11 using (var streamReader = new StreamReader("/Setting.xml", new UTF8Encoding(false))) 12 { 13 this = (Setting)xmlSerializer.Deserialize(streamReader); 14 } 15 } 16}
XML
1<?xml version="1.0" encoding="utf-8"?> 2<Setting xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 3 <Foo>テストA</Foo> 4 <Bar>テストB</Bar> 5</Setting>
上記の様に、設定クラスを定義し、コンストラクタ内でXmlファイルをデシリアライズしたいのですが、
デシリアライズを行う行のthisに波線が生じ、「読み取り専用であるため'this'には割り当てできません」となります。
コンストラクタ内でXmlファイルをデシリアライズし、各プロパティに値をセットする方法はありますでしょうか?
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/12/26 02:30