这就是我所拥有的。(只是用户类,函数和函数调用。我只是从代码中抓取它们作为参考)序列化工作得很好,它只是反序列化不能工作...我运行我的程序并输入用户信息,它序列化到XML就好....我已将其设置为在程序启动时立即反序列化为admin。但当我去查看用户时,我看到的每个条目都是“未知”。
public static User admin = new User();
admin = DeserializeFromXMLUser();
//Send user to user config XML file
static public void SerializeToXMLUser(User user)
{
XmlSerializer serializer = new XmlSerializer(typeof(User));
TextWriter textWriter = new StreamWriter(@"G:\\Projects\User Config.xml");
serializer.Serialize(textWriter, user);
textWriter.Close();
}
//Grab user info from user config XML file
static User DeserializeFromXMLUser()
{
XmlSerializer deserializer = new XmlSerializer(typeof(User));
TextReader textReader = new StreamReader(@"G:\\Projects\User Config.xml");
User user;
user = (User)deserializer.Deserialize(textReader);
textReader.Close();
return user;
}
//Creating a User Object Class
public class User
{
public string userEMail { get; set; }
public string userPassword { get; set; }
public string userCell { get; set; }
public string userSMTP { get; set; }
public User()
{
userEMail = "Unknown";
userPassword = "BpGusTrn3/59drIJCB6eRw==";
userCell = "Unknown";
userSMTP = "Unknown";
}
}
这是XML文件:
<?xml version="1.0" encoding="utf-8"?>
<User xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<userEMail>someone@somewhere</userEMail>
<userPassword>BpGusTrn3/59drIJCB6eRw==</userPassword>
<userCell>1234567890</userCell>
<userSMTP>some-smtp.server.com</userSMTP>
</User>