ADO存储过程和三层架构的应用.docx
《ADO存储过程和三层架构的应用.docx》由会员分享,可在线阅读,更多相关《ADO存储过程和三层架构的应用.docx(70页珍藏版)》请在冰豆网上搜索。
ADO存储过程和三层架构的应用
实验报告
实验四:
存储过程和三层架构的应用
实验目的
能熟练使用存储过程对数据进行操作,掌握三层架构开发软件的思想,能熟练应用
一、实验内容
1.搭建三层架构,实现登陆功能
2.使用三层架构完成下面窗体的功能:
二、实验环境
1.硬件:
学生用微机、局域网环境
2.软件:
WindowsXP中文操作系统、SQLSERVER2005及以上版本
三、实验调试与结果分析
(附上代码,以及运行结果的截图)
一:
UI层(有多个窗体)
usingSystem;
usingSystem.Collections.Generic;
usingSystem.ComponentModel;
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Threading.Tasks;
usingSystem.Windows.Forms;
usingSystem.Net.Mail;
usingSystem.Net.Mime;
usingSystem.Net;
usingSystem.IO;
usingMODEL;
usingBLL;
namespaceUI
{
publicpartialclassForm1:
Form
privatestringemail;
privatestringemail_pwd;
privatestringusepwd;
publicForm1()
InitializeComponent();
}
///
///登录与找回密码
privatevoidbutton1_Click(objectsender,EventArgse)
usedatacsuse=newusedatacs();
use.Usename=textBox_name.Text.Trim();
Bllb=newBll();
usedatacsus=b.Login(use);
email=us.Email;//获取绑定邮箱
email_pwd=us.Email_pwd;//获取绑定邮箱密码
usepwd=us.Usepwd;//获取学生管理系统登录密码
if(us.Usename=="")
errorProvider1.SetError(textBox_name,"帐号不存在或不为空");
else
if(us.Usepwd==textBox_pwd.Text.Trim())
mainm=newmain(textBox_name.Text);
m.Show();
this.Hide();
errorProvider1.SetError(textBox_pwd,"密码错误");
privatevoidForm1_Load(objectsender,EventArgse)
errorProvider1.BlinkStyle=ErrorBlinkStyle.AlwaysBlink;
toolTip1.ReshowDelay=0;
toolTip1.InitialDelay=0;
toolTip1.SetToolTip(textBox_name,"用户名不超过9位");
toolTip1.SetToolTip(textBox_pwd,"密码不超过6位");
privatevoidtextBox_name_TextChanged(objectsender,EventArgse)
errorProvider1.SetError(textBox_name,string.Empty);//提示消失
privatevoidtextBox_pwd_TextChanged(objectsender,EventArgse)
errorProvider1.SetError(textBox_pwd,string.Empty);//提示消失
privatevoidbutton2_Click(objectsender,EventArgse)
textBox_name.Text="";
textBox_pwd.Text="";
privatevoidlinkLabel1_LinkClicked(objectsender,LinkLabelLinkClickedEventArgse)
////this.linkLabel1.Links[0].LinkData="";
Sear_pwdpwd=newSear_pwd();
pwd.ShowDialog();
privatevoidgroupBox1_Enter(objectsender,EventArgse)
publicpartialclassFormxiangxixinxi:
privatestringsno;
privatestringsex;
privatestringname;
publicFormxiangxixinxi()
publicFormxiangxixinxi(stringsno,stringname,stringsex)
this.sno=sno;
this.name=name;
this.sex=sex;
privatevoidFormxiangxixinxi_Load(objectsender,EventArgse)
label_name.Text=name;
label_sex.Text=sex;
label_sno.Text=sno;
groupBox1.Text=name+":
同学的详细信息";
listView1.LabelWrap=true;
listView1.View=View.Details;
listView1.Columns.Add("课程号");
listView1.Columns.Add("课程名");
listView1.Columns.Add("学分");
listView1.Columns.Add("成绩");
Bllbl=newBll();
DataSetds=bl.Select_xiangxixinxi(sno);
listView1.Items.Clear();
for(inti=0;i{//MessageBox.Show(ds.Tables[0].Rows[i][j].ToString());ListViewItemlist=newListViewItem(newstring[]{ds.Tables[0].Rows[i][0].ToString(),ds.Tables[0].Rows[i][1].ToString(),ds.Tables[0].Rows[i][2].ToString(),ds.Tables[0].Rows[i][3].ToString()});listView1.Items.Add(list);}}privatevoidbutton1_Click_1(objectsender,EventArgse){this.Close();}}}usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingSystem.Windows.Forms;usingMODEL;usingBLL;namespaceUI{publicpartialclassForm_suoding:Form{stringname;publicForm_suoding(){InitializeComponent();}publicForm_suoding(stringname){this.name=name;InitializeComponent();}privatevoidbutton1_Click(objectsender,EventArgse){if(textBox1.Text==""){errorProvider1.SetError(textBox1,"不能为空");}else{usedatacsuse=newusedatacs();use.Usename=name;Bllb=newBll();usedatacsus=b.Login(use);if(us.Usename!=""){if(us.Usepwd==textBox1.Text.Trim()){mainm=newmain();m.Show();this.Hide();}}}}privatevoidtextBox1_TextChanged(objectsender,EventArgse){errorProvider1.SetError(textBox1,string.Empty);}}}usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingSystem.Windows.Forms;usingMODEL;usingBLL;usingSystem.Data.SqlClient;usingSystem.Text.RegularExpressions;namespaceUI{publicpartialclassmain:Form{stringxuehao;stringxingming;stringxingbie;stringname;publicmain(){InitializeComponent();}publicmain(stringname){this.name=name;InitializeComponent();}stringpath;//存放照片路劲//////刷新功能///publicvoidgetbin(){Bllbl=newBll();suse=news();DataSetds=null;ds=bl.Select_all(use);try{bindingSource1.DataSource=ds.Tables[0];bindingNavigator1.BindingSource=bindingSource1;dataGridView1.DataSource=bindingSource1;}catch(Exceptions){MessageBox.Show(s.Message);}}//////实现添加/////////privatevoidbutton1_Click(objectsender,EventArgse){if(textBox_sno.Text==""){errorProvider1.SetError(textBox_sno,"不能为空");}elseif(textBox_name.Text==""){errorProvider1.SetError(textBox_name,"不能为空");}elseif(comboBox1_sex.Text==""){errorProvider1.SetError(comboBox1_sex,"不能为空");}elseif(textBox4_age.Text==""){errorProvider1.SetError(textBox4_age,"不能为空");}elseif(textBox5_class.Text==""){errorProvider1.SetError(textBox5_class,"不能为空");}elseif(textBox6_sumcredit.Text==""){errorProvider1.SetError(textBox6_sumcredit,"不能为空");}elseif(path==""){errorProvider1.SetError(button5,"选择照片");}else{inti=0;suse=news();Bllbl=newBll();use.Sno=textBox_sno.Text.Trim();use.Name=textBox_name.Text.Trim();use.Sex=comboBox1_sex.Text;use.Age=Convert.ToInt32(textBox4_age.Text.Trim());use.Cla=textBox5_class.Text.Trim();use.Sumgrade=textBox6_sumcredit.Text.Trim();use.Photo=path;try{i=bl.Insert(use);}catch(Exceptions){MessageBox.Show(s.Message+"照片路劲为空了亲");}if(i>0){MessageBox.Show("插入成功!");getbin();};}}//////选择照片/////////privatevoidbutton5_Click(objectsender,EventArgse){openFileDialog1.Filter="*.jpg|*.jpg|*.bmp|*.bmp";if(openFileDialog1.ShowDialog()==DialogResult.OK){path=this.openFileDialog1.FileName;pictureBox1.Image=Image.FromFile(path);}}//////清空/////////privatevoidbutton6_Click(objectsender,EventArgse){textBox_sno.Text="";textBox_name.Text="";comboBox1_sex.Text="";textBox4_age.Text="";textBox5_class.Text="";textBox6_sumcredit.Text="";pictureBox1.Image=null;path="";}privatevoidmain_Load(objectsender,EventArgse){listView1.LabelWrap=true;listView1.View=View.Details;listView1.Columns.Add("课程号",100);listView1.Columns.Add("课程名",200);listView1.Columns.Add("人数",150);listView1.Columns.Add("学分",100);listView2.LabelWrap=true;listView2.View=View.Details;listView2.Columns.Add("学号",120);listView2.Columns.Add("课程号",120);listView2.Columns.Add("成绩",120);listView3.LabelWrap=true;listView3.View=View.Details;listView3.Columns.Add("用户名",100);listView3.Columns.Add("密码",100);listView3.Columns.Add("邮箱",100);listView3.Columns.Add("邮箱密码",100);Bllbl=newBll();suse=news();Cc=newC();c.Cno="";DataSetds=bl.Select_all(use);com_c_sno.DataSource=ds.Tables[0];com_c_sno.DisplayMember="sno";DataSetds1=bl.Selectall_c(c);com_c_cno.DataSource=ds1.Tables[0];com_c_cno.DisplayMember="cno";toolStripStatusLabel2.Text=name;this.dataGridView1.RowsDefaultCellStyle.BackColor=Color.Bisque;this.dataGridView1.AlternatingRowsDefaultCellStyle.BackColor=Color.Beige;}privatevoidtimer1_Tick(objectsender,EventArgse){toolStripStatusLabel4.Text=DateTime.Now.ToString();label11.Left=label11.Left-5;if(label11.Left<200){label11.Left=500;}}privatevoidtextBox_sno_TextChanged(objectsender,EventArgse){errorProvider1.SetError(textBox_sno,string.Empty);}privatevoidtextBox_name_TextChanged(objectsender,EventArgse){errorProvider1.SetError(textBox_name,string.Empty);}privatevoidcomboBox1_sex_TextChanged(objectsender,EventArgse){errorProvider1.SetError(comboBox1_sex,string.Empty);}privatevoidtextBox4_age_TextChanged(objectsender,EventArgse){errorProvider1.SetError(textBox4_age,string.Empty);}privatevoidtextBox5_class_TextChanged(objectsender,EventArgse){errorProvider1.SetError(textBox5_class,string.Empty);}privatevoidtextBox6_sumcredit_TextChanged(objectsender,Eve
//MessageBox.Show(ds.Tables[0].Rows[i][j].ToString());
ListViewItemlist=newListViewItem(newstring[]{ds.Tables[0].Rows[i][0].ToString(),ds.Tables[0].Rows[i][1].ToString(),ds.Tables[0].Rows[i][2].ToString(),ds.Tables[0].Rows[i][3].ToString()});
listView1.Items.Add(list);
privatevoidbutton1_Click_1(objectsender,EventArgse)
this.Close();
publicpartialclassForm_suoding:
stringname;
publicForm_suoding()
publicForm_suoding(stringname)
{if(textBox1.Text==""){
errorProvider1.SetError(textBox1,"不能为空");
}else{
use.Usename=name;
if(us.Usename!
="")
if(us.Usepwd==textBox1.Text.Trim())
mainm=newmain();
privatevoidtextBox1_TextChanged(objectsender,EventArgse)
errorProvider1.SetError(textBox1,string.Empty);
usingSystem.Data.SqlClient;
usingSystem.Text.RegularExpressions;
publicpartialclassmain:
stringxuehao;
stringxingming;
stringxingbie;
publicmain()
publicmain(stringname)
stringpath;//存放照片路劲
///刷新功能
publicvoidgetbin()
suse=news();
DataSetds=null;
ds=bl.Select_all(use);
try
bindingSource1.DataSource=ds.Tables[0];
bindingNavigator1.BindingSource=bindingSource1;
dataGridView1.DataSource=bindingSource1;
catch(Exceptions)
MessageBox.Show(s.Message);
///实现添加
if(textBox_sno.Text=="")
errorProvider1.SetError(textBox_sno,"不能为空");
}elseif(textBox_name.Text=="")
errorProvider1.SetError(textBox_name,"不能为空");
}elseif(comboBox1_sex.Text=="")
errorProvider1.SetError(comboBox1_sex,"不能为空");
}elseif(textBox4_age.Text=="")
errorProvider1.SetError(textBox4_age,"不能为空");
}elseif(textBox5_class.Text=="")
errorProvider1.SetError(textBox5_class,"不能为空");
elseif(textBox6_sumcredit.Text=="")
errorProvider1.SetError(textBox6_sumcredit,"不能为空");
}elseif(path=="")
errorProvider1.SetError(button5,"选择照片");
{inti=0;
use.Sno=textBox_sno.Text.Trim();
use.Name=textBox_name.Text.Trim();
use.Sex=comboBox1_sex.Text;
use.Age=Convert.ToInt32(textBox4_age.Text.Trim());
use.Cla=textBox5_class.Text.Trim();
use.Sumgrade=textBox6_sumcredit.Text.Trim();
use.Photo=path;
i=bl.Insert(use);
}catch(Exceptions){
MessageBox.Show(s.Message+"照片路劲为空了亲");
if(i>0){MessageBox.Show("插入成功!
");getbin();};
///选择照片
privatevoidbutton5_Click(objectsender,EventArgse)
openFileDialog1.Filter="*.jpg|*.jpg|*.bmp|*.bmp";
if(openFileDialog1.ShowDialog()==DialogResult.OK){
path=this.openFileDialog1.FileName;
pictureBox1.Image=Image.FromFile(path);
///清空
privatevoidbutton6_Click(objectsender,EventArgse)
textBox_sno.Text="";
comboBox1_sex.Text="";
textBox4_age.Text="";
textBox5_class.Text="";
textBox6_sumcredit.Text="";
pictureBox1.Image=null;
path="";
privatevoidmain_Load(objectsender,EventArgse)
listView1.Columns.Add("课程号",100);
listView1.Columns.Add("课程名",200);
listView1.Columns.Add("人数",150);
listView1.Columns.Add("学分",100);
listView2.LabelWrap=true;
listView2.View=View.Details;
listView2.Columns.Add("学号",120);
listView2.Columns.Add("课程号",120);
listView2.Columns.Add("成绩",120);
listView3.LabelWrap=true;
listView3.View=View.Details;
listView3.Columns.Add("用户名",100);
listView3.Columns.Add("密码",100);
listView3.Columns.Add("邮箱",100);
listView3.Columns.Add("邮箱密码",100);
Cc=newC();
c.Cno="";
DataSetds=bl.Select_all(use);
com_c_sno.DataSource=ds.Tables[0];
com_c_sno.DisplayMember="sno";
DataSetds1=bl.Selectall_c(c);
com_c_cno.DataSource=ds1.Tables[0];
com_c_cno.DisplayMember="cno";
toolStripStatusLabel2.Text=name;
this.dataGridView1.RowsDefaultCellStyle.BackColor=Color.Bisque;
this.dataGridView1.AlternatingRowsDefaultCellStyle.BackColor=Color.Beige;
privatevoidtimer1_Tick(objectsender,EventArgse)
toolStripStatusLabel4.Text=DateTime.Now.ToString();
label11.Left=label11.Left-5;
if(label11.Left<200)
label11.Left=500;
privatevoidtextBox_sno_TextChanged(objectsender,EventArgse)
errorProvider1.SetError(textBox_sno,string.Empty);
errorProvider1.SetError(textBox_name,string.Empty);
privatevoidcomboBox1_sex_TextChanged(objectsender,EventArgse)
errorProvider1.SetError(comboBox1_sex,string.Empty);
privatevoidtextBox4_age_TextChanged(objectsender,EventArgse)
errorProvider1.SetError(textBox4_age,string.Empty);
privatevoidtextBox5_class_TextChanged(objectsender,EventArgse)
errorProvider1.SetError(textBox5_class,string.Empty);
privatevoidtextBox6_sumcredit_TextChanged(objectsender,Eve
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1