|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
使用cdonts,可以发送、查看邮件,实现webmail的功能。结合wsh,可以实现对nt主机的管理,如nt用户管理、iis虚拟主机设置、exchange邮箱设置等等,就像管理本地机一样方便。datagrid|数据文件代码:
test.aspx
===========================>
<%@PageLanguage="C#"Debug="True"%>
<%@ImportNamespace="System.Data"%>
<%@ImportNamespace="System.Data.SqlClient"%>
<scriptlanguage="C#"runat="server">
conststringDataTableName="Employees";
SqlConnectionconn;
SqlDataAdapteradapter;
voidPage_Load(Objectsrc,EventArgse)
{
conn=newSqlConnection("server=(local);database=pubs;uid=sa;pwd=");
adapter=newSqlDataAdapter("select*fromemployees",conn);
if(!Page.IsPostBack){
BindData();
}
}
//绑定命据
voidBindData(){
//先从Session中猎取DataTable
DataTabletable=(DataTable)Session[DataTableName];
//若Session中的DataTable不存在,则从数据库猎取数据
if(table==null){
table=newDataTable();
adapter.Fill(table);
//将DataTable保留到Session中
SaveTableToSession(table);
table.Columns["id"].AutoIncrement=true;
}
grid.DataSource=table;
grid.DataBind();
}
voidChangePage(objectsrc,DataGridPageChangedEventArgse){
grid.CurrentPageIndex=e.NewPageIndex;
BindData();
}
voidUpdateDataTable(objectsrc,EventArgse){
try{
DataTabletable=GetTableFromSession();
stringname;
byteage;
stringaddress;
CheckBoxckdel;
for(inti=0;i<grid.Items.Count;i++){
DataGridItemdgitem=grid.Items[i];
intempId=(int)grid.DataKeys[dgitem.ItemIndex];
ckdel=dgitem.FindControl("delckb")asCheckBox;
name=((TextBox)dgitem.Cells[0].Controls[1]).Text;
age=byte.Parse(((TextBox)dgitem.Cells[1].Controls[1]).Text);
address=((TextBox)dgitem.Cells[2].Controls[1]).Text;
UpdateEmployee(table,empId,name,age,address,ckdel.Checked);
}
SaveTableToSession(table);
cancelbtn.Enabled=true;
introwcount=0;
foreach(DataRowrowintable.Rows){
if(row.RowState!=DataRowState.Deleted)
rowcount++;
}
if(Math.Ceiling(rowcount/5.0)==grid.CurrentPageIndex&&grid.CurrentPageIndex>0)
grid.CurrentPageIndex-=1;
BindData();
msglbl.Text="更新数据表乐成!";
}
catch(Exceptionex){
msglbl.Text="更新数据表失利,呈现不测毛病:"+ex.Message;
}
}
voidUpdateEmployee(DataTabletable,intid,stringname,byteage,stringaddress,boolisDelete){
for(inti=0;i<table.Rows.Count;i++){
DataRowrow=table.Rows[i];
//假如选中了删除复选框,就间接就该行数据删除,不必再更新,不然更新该行数据
if(row!=null&&row.RowState!=DataRowState.Deleted){
if((int)row["id"]==id){
if(!isDelete){
row["name"]=name;
row["age"]=age;
row["address"]=address;
}
else
row.Delete();
}
}
}
msglbl.Text="更新数据表乐成!";
}
voidUpdateDataBase(objectsrc,EventArgse){
try{
DataTabletable=GetTableFromSession();
SqlCommandBuildercmdbd=newSqlCommandBuilder(adapter);
adapter.Update(table);
msglbl.Text="更新数据源乐成!";
cancelbtn.Enabled=false;
}
catch(Exceptionex){
msglbl.Text="更新数据源失利,呈现不测毛病:"+ex.Message;
}
BindData();
}
voidCancelUpdate(objectsrc,EventArgse){
DataTabletable=GetTableFromSession();
table.RejectChanges();
grid.CurrentPageIndex=0;
BindData();
cancelbtn.Enabled=false;
}
voidAddNewEmployee(objectsrc,DataGridCommandEventArgse){
if(e.CommandName=="Add"){
try{
DataTabletable=GetTableFromSession();
stringname=((TextBox)e.Item.FindControl("newname")).Text;
byteage=byte.Parse(((TextBox)e.Item.FindControl("newage")).Text);
stringaddress=((TextBox)e.Item.FindControl("newaddress")).Text;
DataRowrow=table.NewRow();
row["name"]=name;
row["age"]=age;
row["address"]=address;
table.Rows.Add(row);
SaveTableToSession(table);
//从头绑定命据
BindData();
msglbl.Text="增加新纪录乐成!";
cancelbtn.Enabled=true;
}
catch(Exceptionex){
msglbl.Text="未能增加新纪录,呈现不测毛病:"+ex.Message;
}
}
}
//将DataTable保留到session中
voidSaveTableToSession(DataTabletable){
Session[DataTableName]=table;
}
//从Session中猎取DataTable
DataTableGetTableFromSession(){
DataTabletable=(DataTable)Session[DataTableName];
if(table!=null){
returntable;
}
else{</p>强大的可扩展性。ASP具有强大的扩展性,可以实现与多种网络、硬件设备的连接:通过专用的通讯线路远程接入企业;通过远程拨号服务器为远程拨号客户提供服务;通过WAP为移动电话互联网客户服务。 |
|