我目前正在處理涉及C#中的註冊/登錄表單的項目。我正在使用平面文件(XML)來存儲註冊信息,並在C#中使用Xml.Linq來完成此操作。從xml文件檢查細節以驗證C#中的登錄詳細信息
我目前遇到了我的登錄驗證代碼問題,因爲我現在已停止工作,因爲我將註冊碼更改爲linq版本。我得到的錯誤代碼是...
「在WaiterApp.exe中發生未處理的'System.NullReferenceException'類型異常其他信息:未將對象引用設置爲對象實例。」
如果有人可以幫我解決這個問題,我已經包含了我的代碼,因爲我是一個C#新手,我試圖調試爲什麼會發生這種情況,但沒有運氣。謝謝:)
註冊代碼...
XElement xml = new XElement("RegisterInfo",
new XElement("User",
new XElement("Data1", nameTextBox.Text),
new XElement("Data2", emailTextBox.Text),
new XElement("Data3", passwordTextBox.Text),
new XElement("Data4", confirmPasswordTextBox.Text)
)
);
xml.Save("data.xml");
this.Hide();
Login ss = new Login();
ss.Show();
登入碼
XmlDocument doc = new XmlDocument();
doc.Load("data.xml"); //This code will load the Data xml document with the Login details.
foreach (XmlNode node in doc.SelectNodes("//RegisterInfo"))
{
String Username = node.SelectSingleNode("Data1").Value;
String Password = node.SelectSingleNode("Data3").Value;
if (Username == nameTextBox.Text && Password == passwordTextBox.Text)
{
MessageBox.Show("You have logged in!");
this.Hide();
Main ss = new Main();
ss.Show();
}
else
{
MessageBox.Show("Error Logging you in!");
}
XML腳本
<?xml version="1.0" encoding="utf-8"?>
<RegisterInfo>
<User>
<Data1>Charlie</Data1>
<Data2>[email protected]</Data2>
<Data3>1</Data3>
<Data4>1</Data4>
</User>
</RegisterInfo>
的可能的複製[?什麼是一個NullReferenceException,以及如何修復它(HTTP:// stackoverflow.com/questions/4660142/what-is-a-nullreferenceexception-and-how-do-i-fix-it) –