C#XML-can';不读取XML文件?

C#XML-can';不读取XML文件?,c#,xml,visual-studio-2010,C#,Xml,Visual Studio 2010,我试图读取加载在doc中的整个xml文件。我试图遍历每个节点,并与文本框进行比较,看看它们的帐户是否存在 很抱歉没有深入,这是我的第一篇文章,我希望这些图片能有所帮助:请注意,源代码在控制台应用程序中工作得很好,但是在Windows窗体应用程序中不工作,但当我单击“登录”按钮时,似乎什么都没有发生,但在控制台应用程序中工作,但不是这个,有什么想法吗 源代码: 我正在阅读的Xml: 源代码不在图像中: private void btnLogin_Click(object sender, Eve

我试图读取加载在doc中的整个xml文件。我试图遍历每个节点,并与文本框进行比较,看看它们的帐户是否存在

很抱歉没有深入,这是我的第一篇文章,我希望这些图片能有所帮助:请注意,源代码在控制台应用程序中工作得很好,但是在Windows窗体应用程序中不工作,但当我单击“登录”按钮时,似乎什么都没有发生,但在控制台应用程序中工作,但不是这个,有什么想法吗

源代码:

我正在阅读的Xml:

源代码不在图像中:

private void btnLogin_Click(object sender, EventArgs e)
{
        string User = txtUserName.Text;
        string pass = txtPassword.Text;

        XmlDocument Doc = new XmlDocument();
        Doc.Load("login.xml");

        //iterating through each node to use for comparison for the textboxes

        foreach (XmlNode CurrentNode in Doc.SelectNodes("accounts/user"))
        {
            string username = CurrentNode.SelectSingleNode("username").InnerText;
            string password = CurrentNode.SelectSingleNode("password").InnerText;



            if (txtUserName.Text == username && txtPassword.Text == password)
            {
                MessageBox.Show("Account exists");
            }
            else 
            {
                MessageBox.Show("does not exist");
            }


        }

请尝试提供xml所在的完整路径,而不是在代码中提供login.xml

让我们进行一个小的重构,并引入一个特殊的函数来检查用户名/密码

static bool CheckLogin(string path, string username, string pwd)
{
return XDocument.Load(path).Root
.Elements("user")
.Any(x=>x.Element("username").Value==username && x.Element("password").Value==pwd);
}

请不要以截图的形式发布源代码。请在问题中发布源代码。另外,当您在调试器中单步执行此操作时,它在何处/如何具体失败?(你的逻辑似乎也有点混乱。如果文件中有100个条目,你真的想要99个消息框告诉你每个条目不匹配吗?)可能是你必须将“帐户/用户”更改为“玩家/用户”,但这只是一个有根据的猜测。哦,对不起,我的错,第一次,我对编程完全陌生,但在我的控制台应用程序中,如果消息有效,它只输出一条消息。对不起,我不再有任何意义了。我已经按照你说的做了,现在如何把它放进代码窗口而不是图像。谢谢你的输入,似乎不起作用,我把我的头发从这里拉出来,因为@Thomas提到代码中的代码应该是玩家/用户谢谢伙计们,我修复了它,谢谢你的帮助,对不起我的无趣