This article is shows about insert data into XML
file instead of using SqlServer database.
For that first Design your form as per your
requirements.
In this am adding daily expenses of a person for
that am taking fields as Date, Amount, Purpose,
Source Bank and one Save button like
below:
For accessing XML file add the following namespace
in top of your code:
using
System.Xml;
Write the following code in your Save button Click:
private void
btnsave_Click(object sender, EventArgs e)
{
string
path = "Expences.xml";
XmlDocument
doc = new XmlDocument();
//If
there is no current file, then create a new one
if
(!System.IO.File.Exists(path))
{
//Create
neccessary nodes
XmlDeclaration
declaration = doc.CreateXmlDeclaration("1.0",
"UTF-8", "yes");
XmlComment
comment = doc.CreateComment("This is an XML
Generated File");
doc.AppendChild(declaration);
doc.AppendChild(comment);
}
else
//If there is already a file
{
// //Load the XML File
doc.Load(path);
}
//Get the root
element
XmlElement
root = doc.DocumentElement;
XmlElement
Subroot = doc.CreateElement("Expences");
XmlElement
Date = doc.CreateElement("Date");
XmlElement
Amount = doc.CreateElement("Amount");
XmlElement
Purpose = doc.CreateElement("purpose");
XmlElement
Source = doc.CreateElement("Source");
XmlElement
Bank = doc.CreateElement("Bank");
//Add the
values for each nodes
Date.InnerText = Convert.ToDateTime(dateTimePicker1.Text).ToShortDateString();
Amount.InnerText = txtAmount.Text;
Purpose.InnerText =
txtPurpose.Text;
if
(radioButton1.Checked)
{
Source.InnerText = "Cash";
Bank.InnerText = " ";
}
else
{
Source.InnerText = "Bank";
Bank.InnerText =
comboBox1.SelectedItem.ToString();
}
Subroot.AppendChild(Date);
Subroot.AppendChild(Amount);
Subroot.AppendChild(Purpose);
Subroot.AppendChild(Source);
Subroot.AppendChild(Bank);
root.AppendChild(Subroot);
doc.AppendChild(root);
//Save
the document
doc.Save(path);
//Show
confirmation message
MessageBox.Show("Details
added Successfully");
//Reset
text fields for new input
txtPurpose.Text = String.Empty;
txtAmount.Text = String.Empty;
}
To see your saving data in XML file do the following steps:
Select your solution from Solution Explorer
Right click and Select Open Folder in Windows Explorer
Then your application folder will open in that double click on bin
folder then double click debug folder
Then you will see your Expenses XML document file à double click on it then you will see
your Saving Data in your browser like below:
Retrieve
data from XML file and show in DataGridview :
For showing these saving data into DataGridview, am taking one Show
button and DataGridview Control in the form:
Write the following code in show button click:
private void btnShow_Click(object sender, EventArgs e)
{
XmlReader xmlFile;
xmlFile = XmlReader.Create("Expences.xml", new XmlReaderSettings());
DataSet ds = new DataSet();
ds.ReadXml(xmlFile);
dataGridView1.DataSource = ds.Tables[0];
}
Then you will see your data binding to DataGridview like below:
No comments:
Post a Comment