0

XMLをデシリアライズしてモデル化しようとしています。たとえば、次のようなものがあります。

<A>
    <B id=1></B>
    <B id=2></B>
    <B id=3></B>
</A>

モデル B を作成せずに B の ID を取得することは可能ですか? だから私は最終的にこのようなものを持ちたいです:

public class A {
    [XmlAttribute(B/@id)]
    public List<int> ids { get; set; }
}

どうも。

4

1 に答える 1

0

ISerializable インターフェイスを実装して、カスタムのシリアル化/逆シリアル化を追加できます。

http://msdn.microsoft.com/en-us/library/ty01x675.aspx

[Serializable]
public class MyObject : ISerializable 
{
  public int n1;
  public int n2;
  public String str;

  public MyObject()
  {
  }

  protected MyObject(SerializationInfo info, StreamingContext context)
  {
    n1 = info.GetInt32("i");
    n2 = info.GetInt32("j");
    str = info.GetString("k");
  }
[SecurityPermissionAttribute(SecurityAction.Demand, 
SerializationFormatter =true)]

public virtual void GetObjectData(SerializationInfo info, StreamingContext context)
  {
    info.AddValue("i", n1);
    info.AddValue("j", n2);
    info.AddValue("k", str);
  }
}
于 2013-10-10T11:41:58.993 に答える