将我的一类变量保存到XML文件中

本文关键字:XML 文件 保存 我的 类变量 | 更新日期: 2023-09-27 18:29:39

我创建了一个名为"VNCVars.cs"的类,我希望能够将与VNCVars中所有变量相关的数据保存到一个XML文件中,这样我就可以在启动时重新加载它们。我有另一个名为"SaveData.cs"的类,它包含生成XML文件的代码。

我已经编写了运行的代码,但我的XML文件总是空的。。。。。有人能指出我遗漏了什么吗??

public class VNCVars
{
    //Global Variables for VNC 1 Location
    //VNC File Location 1 Get and Set routines
    private static string strVNC1Location;
    public static string VNC1Location
    {
        get { return strVNC1Location; }
        set { strVNC1Location = value; }
    }

    //Global Variables for VNC 2 Location
    //VNC File Location 2 Get and Set routines
    private static string strVNC2Location;
    public static string VNC2Location
    {
        get { return strVNC2Location; }
        set { strVNC2Location = value; }
    }

    //Global Variables for VNC 3 Location
    //VNC File Location 3 Get and Set routines
    private static string strVNC3Location;
    public static string VNC3Location
    {
        get { return strVNC3Location; }
        set { strVNC3Location = value; }
    }
}
public class SaveXML
{
    public static void SaveData()
    {
        var SaveData = new VNCVars();
        XmlSerializer sr = new XmlSerializer(typeof(VNCVars));
        TextWriter writer = new StreamWriter(@"c:'Fanuc'SetupVars.xml");
        sr.Serialize(writer, SaveData);
        writer.Close();
    }

}

最后,在我的表格上,我现在只有一个按钮,点击后会出现以下情况。。。

    private void button2_Click(object sender, EventArgs e)
    {
        SaveXML.SaveData();
    }

非常感谢您的帮助。。。。

将我的一类变量保存到XML文件中

您应该使用实例属性而不是静态属性。

然后,您可以使用singleton模式只保留这个类的一个实例。

如果您需要静态变量,并且不想使此类成为单例,那么方法是包装静态变量:

[XmlElement("VNC1Location")]
public string VNC1LocationLocal
{
    get
    {
        return VNC1Location;
    }
    set
    {
        VNC1Location = value;
    }
}