zoukankan      html  css  js  c++  java
  • wp7 xml

    public class DynamicXMLNode : DynamicObject
    {
    XElement node;
    public DynamicXMLNode(XElement node)
    {
    this.node = node;
    }
    public DynamicXMLNode()
    {
    }
    public DynamicXMLNode(String name)
    {
    node = new XElement(name);
    }
    public override bool TrySetMember(
    SetMemberBinder binder, object value)
    {
    XElement setNode = node.Element(binder.Name);
    if (setNode != null)
    setNode.SetValue(value);
    else
    {
    if (value.GetType() == typeof(DynamicXMLNode))
    node.Add(new XElement(binder.Name));
    else
    node.Add(new XElement(binder.Name, value));
    }
    return true;
    }
    public override bool TryGetMember(
    GetMemberBinder binder, out object result)
    {
    XElement getNode = node.Element(binder.Name);
    if (getNode != null)
    {
    result = new DynamicXMLNode(getNode);
    return true;
    }
    else
    {
    result = null;
    return false;
    }
    }

    public override bool TryConvert(
    ConvertBinder binder, out object result)
    {
    if (binder.Type == typeof(String))
    {
    result = node.Value;
    return true;
    }
    else
    {
    result = null;
    return false;
    }
    }

    public override bool TryInvokeMember(
    InvokeMemberBinder binder,
    object[] args,
    out object result)
    {
    Type xmlType = typeof(XElement);
    try
    {
    result = xmlType.InvokeMember(
    binder.Name,
    BindingFlags.InvokeMethod |
    BindingFlags.Public |
    BindingFlags.Instance,
    null, node, args);
    return true;
    }
    catch
    {
    result = null;
    return false;
    }
    }

    }

  • 相关阅读:
    JAVA中==与equals的区别
    spring面试重点
    struts2
    每个新手程序员必看的 SQL 指南
    QueryRunner的使用
    jquery GET POST
    jquery添加元素
    jquery 滑动动画
    jdbc 安装驱动
    为什么做java的web开发我们会使用struts2,springMVC和spring这样的框架?
  • 原文地址:https://www.cnblogs.com/androllen/p/3484625.html
Copyright © 2011-2022 走看看