![]() |
#2
冰镇柠檬汁儿2010-04-28 17:10
|
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Xml;
public partial class EditDiary : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (IsPostBack)
return;
if (Request.QueryString["id"] == "-1")
{
labelDate.Text = DateTime.Now.ToShortDateString();
int dayofWeek = (int)(DateTime.Now.DayOfWeek);
labelWeek.Text = weekDay[dayofWeek];
}
else
try
{
GetDiary(Request.QueryString["id"]);
}
catch
{
}
}
private void GetDiary(string p)
{
throw new NotImplementedException();
}
private string[] weekDay = { "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" };
private void Getdiary(string id)
{
XmlDataDocument diaryXmlDoc;//载入XMl文档
diaryXmlDoc=new XmlDataDocument();
diaryXmlDoc.Load(Server.MapPath("diaries.xml"));
XmlNode diary= diaryXmlDoc.SelectSingleNode("descendant::diary[@id='"+id+"']");
textTitle.Text=diary.ChildNodes[0].InnerText;
labelDate.Text=diary.ChildNodes[1].InnerText;
int dayofWeek=(int)(DateTime.Parse(labelDate.Text).DayOfWeek);
labelWeek.Text=weekDay[dayofWeek ];
foreach( ListItem item in listWeather .Items )
{
if(item.Text==diary.ChildNodes[2].InnerText)
{
listWeather .SelectedItem.Selected=false ;
item.Selected =true;
break;
}
}
textContent.Text=diary.ChildNodes[3].InnerText;
}
protected void buttonCancel_Click(object sender, ImageClickEventArgs e)
{
string strScript = "<script>self.close()</script>";
RegisterClientScriptBlock("CloseWindow", strScript);
}
protected void buttonOK_Click(object sender, ImageClickEventArgs e)
{
XmlDataDocument diaryXmlDoc;//载入Xml文档
diaryXmlDoc = new XmlDataDocument();
diaryXmlDoc.Load(Server.MapPath("diaries.xml"));
XmlNode root = diaryXmlDoc.DocumentElement;
XmlNode newDiary = diaryXmlDoc.CreateElement("diary");
newDiary.InnerXml = "<title>" + textTitle.Text +"</title>" + "<date>"+labelDate.Text+"</date>"+ "<weather>" + listWeather.SelectedItem.Text + "</weather>" + "<content>" + textContent.Text + "</content>";
if (Request.QueryString["id"] == "-1")//保存日记
{
string diaryID;
int id = int.Parse(root.LastChild.Attributes["id"].Value);
diaryID = (id + 1).ToString();
XmlAttribute attrID = diaryXmlDoc.CreateAttribute("ID");
newDiary.Attributes.Append(attrID);
root.AppendChild(newDiary);
}
else//保存日记
{
XmlAttribute attrID=diaryXmlDoc.CreateAttribute("id");
attrID.Value=Request.QueryString["id"];
newDiary.Attributes.Append(attrID);
XmlNode oldDiary=diaryXmlDoc.SelectSingleNode("descendant::diary[@id='"+Request.QueryString["id"]+"']");
root.ReplaceChild(newDiary ,oldDiary );
}
diaryXmlDoc.Save(Server.MapPath("diaries.xml"));
string strScript="<script>self.close()</script>";
RegisterClientScriptBlock("CloseWindow",strScript);
}
}