将我的一类变量保存到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();
}
非常感谢您的帮助。。。。
您应该使用实例属性而不是静态属性。
然后,您可以使用singleton模式只保留这个类的一个实例。
如果您需要静态变量,并且不想使此类成为单例,那么方法是包装静态变量:
[XmlElement("VNC1Location")]
public string VNC1LocationLocal
{
get
{
return VNC1Location;
}
set
{
VNC1Location = value;
}
}