📄 myoneday.cs
字号:
using System;
using System.ComponentModel;
using System.Configuration;
using System.Data;
using System.IO;
using System.Web;
/// <summary>
/// 我的一天的任务
/// </summary>
[DataObject(true)]
public class MyOneDay
{
// 根目录
private string _ApplicationPath;
private DataSet _ds;//数据源
public MyOneDay()
{
}
private DataTable Table//一天所有的任务
{
get
{
if (_ds == null)//数据源为空,则从xml文件中读取
{
_ds = new DataSet();
_ds.ReadXml(XmlFile);
}
return _ds.Tables[0];
}
}
//获取网站的跟目录
protected string RootPath
{
get
{
if (_ApplicationPath != null)
{
return _ApplicationPath;
}
else if (HttpContext.Current != null)//获取根目录
{
return _ApplicationPath = HttpContext.Current.Server.MapPath(HttpContext.Current.Request.ApplicationPath);
}
else//出现错误
{
throw new ApplicationException("没有找到根目录.");
}
}
}
protected string XmlFile //xml文件的名字,包含路径
{
get { return Path.Combine(RootPath, @"App_Data\myoneday.xml"); }
}
[DataObjectMethod(DataObjectMethodType.Select)]
public DataView Select()//获取一天任务的列表,以Priority排序
{
Table.DefaultView.Sort = "Priority";
return Table.DefaultView;
}
[DataObjectMethod(DataObjectMethodType.Insert)]
public void Insert(string Title, string Description, int Priority)//插入一项任务
{
DataRow dr = Table.NewRow();//新的一行
dr["ItemID"] = Table.Rows.Count;//标志
dr["Title"] = Title;//标题
dr["Description"] = Description;//描述
dr["Priority"] = Priority;//排列序号
Table.Rows.Add(dr);
SaveChanges();//保存插入结果
}
[DataObjectMethod(DataObjectMethodType.Update)]
public void Update(string Title, string Description, int Priority, int Original_ItemID)//更新一项任务
{
DataRow[] rows = Table.Select(String.Format("ItemID={0}", Original_ItemID));//查找到该任务
if (rows.Length > 0)
{
DataRow dr = rows[0];
dr.BeginEdit();//开始编辑
dr["Title"] = Title;
if (Description == String.Empty)
{
dr["Description"] = null;
}
else
{
dr["Description"] = Description;
}
dr["Priority"] = Priority;
dr.EndEdit();//编辑操作结束
SaveChanges();//保存结果
}
}
[DataObjectMethod(DataObjectMethodType.Delete)]
public void Delete(int Original_ItemID)//删除一项任务
{
DataRow[] rows = Table.Select(String.Format("ItemID={0}", Original_ItemID));//找到该任务
if (rows.Length > 0)
{
Table.Rows.Remove(rows[0]);//清除
SaveChanges();//保存结果
}
}
protected void SaveChanges()//保存xml文件
{
_ds.WriteXml(XmlFile, XmlWriteMode.IgnoreSchema);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -