在您的代码中,XmlSerializer期望反序列化List,但您的XML文件是使用包含用户元素的根元素构建的。
namespace Biftek
{
[XmlRoot("Users")]
public class UsersList
{
[XmlElement("User")]
public List<User> Users { get; set; } = new List<User>();
}
public class User
{
public string username { get; set; }
public string password { get; set; }
}
public class UserManager
{
public static List<User> Load(string path)
{
UsersList usersList = new UsersList();
if(File.Exists(path))
{
XmlSerializer serializer = new XmlSerializer(typeof(UsersList));
using (XmlReader reader = XmlReader.Create(path))
{
usersList = (UsersList)serializer.Deserialize(reader);
}
}
return usersList.Users;
}
}
}