话说每到吃完的时间就发愁,真的不知道该吃什么,然后就想到做一个生成吃什么的小软件,既然这个软件如此的简单,就打算用wpf开发吧,也不用数据库了,直接保存在xml中就可以了
程序整体结构如下图
首先我写了一个xml的帮助类,主要是写了个常用的增加方法
主程序界面也很简单,一共就两个页面
对应的两处代码也粘上
private void Button_Click_1(object sender, RoutedEventArgs e)
{ string path = Common.GetServerPath() + "\\food.xml";
DataSet ds = new DataSet();
ds.ReadXml(path);
DataTable table = ds.Tables[];
DataRow[] tableZao = table.Select("type='早餐'");
DataRow[] tableZhong = table.Select("type='午餐'");
DataRow[] tableWan = table.Select("type='晚餐'");
Random num = new Random();
int temp = num.Next(table.Rows.Count); int temp1 = num.Next(tableZao.Length);
int temp2 = num.Next(tableZhong.Length);
int temp3 = num.Next(tableWan.Length); lblZao.Content = tableZao[temp1][];
lblZhong.Content = tableZhong[temp2][];
lblWan.Content = tableWan[temp3][];
}
XmlHelper xh = new XmlHelper();
string path = Common.GetServerPath() + "\\food.xml"; Hashtable ht = new Hashtable();
string name = txtName.Text;
string type = cbType.Text; XmlDocument xmldoc = new XmlDocument();
xmldoc.Load(path);
XmlNode node = xmldoc.SelectSingleNode("foods");
int id = ;
if (node==null)
{
id = ;
}
else
{
XmlNode node2= node.LastChild;
//foreach (XmlNode item in node2.ChildNodes)
//{
// MessageBox.Show(item.Name[0]+":"+item.InnerText);
//}
id = Convert.ToInt32(node2.FirstChild.InnerText) + ;
} ht.Add("id", id);
ht.Add("name", name);
ht.Add("type", type);
ht.Add("last", "1900-01-01"); xh.InsertNode(path, "food", false, "foods", null, ht);
MessageBox.Show("保存成功"); }
功能很简单,代码也很简单,拿出来分享一下,大家勿喷啊,不过vs2012打包发布倒是挺麻烦的,我下载了一个InstallShield2013LimitedEdition,还是发布不成功,下一篇写一个vs2012打包发布,和大家讨论一下