您不应该以纯XML存储密码;然而,我认为这是你要找的那种比较:
var userSought = "userA";
var passwordSought = "1234";
XDocument xml = new XDocument(
new XDeclaration("1.0", "utf-8", "yes"),
new XElement("Users",
new XElement("User",
new XElement("Username", "Admin"),
new XElement("Password", "123")),
new XElement("User",
new XElement("Username", "userA"),
new XElement("Password", "123"))
));
var userMatch = (from userElement in xml.Element("Users").Elements("User")
where userElement.Element("Username").Value == userSought
select new
{
Username = userElement.Element("Username").Value,
Password = userElement.Element("Password").Value
}).FirstOrDefault();
if(userMatch.Username == userSought && userMatch.Password == passwordSought)
Console.WriteLine(userSought + " matches password " + passwordSought);
else
Console.WriteLine(userSought + " has password " + userMatch.Password + " but is expected to be " + passwordSought);
你不应该在XML文件中存储明文密码。如果你不想处理一个真正的数据库,你应该看看类似SQLite的东西。 – Guvante
我正在使用MD5哈希计划我不会将密码存储为纯文本,但这不是问题,因为我已经想通了。 – Marc
这是非常简单的事情,谷歌将解决 –