C#程序设计报告

专 业 班 级:

指 导 教 师:

小 组 成 员:

姓 名:

学 号:

成 绩 评 定:一:实践目的 c#程序设计》 课外实践报告 信息管理与信息系统一班 宋* 周** ******** 《

1、通过本次试验掌握简单的三层架构体系开发,对三层架构体系有进一步的了解;

2、完成一个控制台应用程序,做出一个基于三层架构开发的安师图书管理系统。

二:实验设备及环境

笔记本,windows ,Microsoft Visual Studio 2008,SQL serve 2008;

三:实践内容

利用三层架构的优势对传统的图书管理系统实例重新编排,使三成架构的思想融汇其中。整个系统共分为两个大的模块,分别是:管理员模块和读者模块;其中管理员模块又可以分为八个小模块,分别是:系统管理,读者信息,图书信息,借阅信息,在线试读,在线教程,重新登录和退出系统。读者模块可以细分为:在库图书,已借图书,在线试读,在线教程,个人信息维护等六个模块。

四:实践步骤

图书管理系统

(一)

BLL(逻辑层)共有Book,Borrow,manager,Reader四个类

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

namespace LibrarySystem

{

public partial class AdminMainForm : Form

{

public AdminMainForm()

{

InitializeComponent();

}

private void 图书代码ToolStripMenuItem_Click(object sender,

EventArgs e)

{

Form Tushuxinxi = new BooksInfoForm();

for (int x = 0; x

{

Form tempChild = (Form)MdiChildren[x];

tempChild.Close();

}

Tushuxinxi.MdiParent = this;

Tushuxinxi.WindowState

FormWindowState.Maximized;

Tushuxinxi.Show();

}

private void 出版时间ToolStripMenuItem_Click(object sender, EventArgs e)

{

Form yiyoutushu = new ExistBooksForm();

for (int x = 0; x

{

Form tempChild = (Form)MdiChildren[x];

tempChild.Close();

}

yiyoutushu.MdiParent = this;

yiyoutushu.WindowState

FormWindowState.Maximized;

yiyoutushu.Show();

}

private void 图书作者ToolStripMenuItem_Click(object sender, EventArgs e)

{

Form yiyoutushu = new ExistBooksForm();

for (int x = 0; x

{ =

Form tempChild = (Form)MdiChildren[x];

tempChild.Close();

}

yiyoutushu.MdiParent = this;

yiyoutushu.WindowState

FormWindowState.Maximized;

yiyoutushu.Show();

}

private void 借阅时间ToolStripMenuItem_Click(object sender, EventArgs e)

{

Form jieyuexinxi = new BorrowInfoForm();

for (int x = 0; x

{

Form tempChild = (Form)MdiChildren[x];

tempChild.Close();

}

jieyuexinxi.MdiParent = this; =

jieyuexinxi.WindowState

FormWindowState.Maximized;

jieyuexinxi.Show();

}

private void 归还时间ToolStripMenuItem_Click_1(object sender, EventArgs e)

{

Form jieyuechaxun = new BorrowSelectForm();

for (int x = 0; x

{

Form tempChild = (Form)MdiChildren[x];

tempChild.Close();

}

jieyuechaxun.MdiParent = this;

jieyuechaxun.WindowState

FormWindowState.Maximized;

jieyuechaxun.Show();

} = =

private void 学生情况ToolStripMenuItem_Click(object sender, EventArgs e)

{

Form duzhexinxi = new ReaderInfoForm();

for (int x = 0; x

{

Form tempChild = (Form)MdiChildren[x];

tempChild.Close();

}

duzhexinxi.MdiParent = this;

duzhexinxi.WindowState

FormWindowState.Maximized;

duzhexinxi.Show();

}

private void 学生信息查询ToolStripMenuItem_Click(object sender, EventArgs e)

{

Form duzhechaxun = new ReaderSelectForm(); =

{

Form tempChild = (Form)MdiChildren[x];

tempChild.Close();

}

duzhechaxun.MdiParent = this;

duzhechaxun.WindowState

FormWindowState.Maximized;

duzhechaxun.Show();

}

private void 退出系统ToolStripMenuItem_Click(object sender, EventArgs e)

{

Application.Exit();

}

private void 修改密码ToolStripMenuItem_Click(object sender, EventArgs e)

{

Form modifypwd = new ModifyPwd(); =

{

Form tempChild = (Form)MdiChildren[x];

tempChild.Close();

}

modifypwd.MdiParent = this;

modifypwd.WindowState

FormWindowState.Maximized;

modifypwd.Show();

}

private void AdminMainForm_Load(object sender, EventArgs e)

{

this.Text = this.userid.Text +

lblTime.Text = lblTime.Text + DateTime.Now.ToString(); }

=

private void timer1_Tick(object sender, EventArgs e)

{

lblTime.Text =

private void 在线教程ToolStripMenuItem_Click(object sender, EventArgs e)

{

Form onlineStudy = new OnlineStudy();

for (int x = 0; x

{

Form tempChild = (Form)MdiChildren[x];

tempChild.Close();

}

onlineStudy.MdiParent = this;

onlineStudy.WindowState

FormWindowState.Maximized;

onlineStudy.Show();

}

=

private void 重新登录ToolStripMenuItem_Click(object sender, EventArgs e)

{

this.Dispose();

LoginForm login = new LoginForm();

login.Show();

}

private void 在线试读ToolStripMenuItem_Click(object sender, EventArgs e)

{

Form onlineRead = new OnlineRead();

for (int x = 0; x

{

Form tempChild = (Form)MdiChildren[x];

tempChild.Close();

}

onlineRead.MdiParent = this;

onlineRead.WindowState =

FormWindowState.Maximized;

onlineRead.Show();

}

}

}五:程序模块截图

管理员登录窗口:

系统主界面:

图书查询:

图书借阅:

读者信息:

在线阅读:

在线教程:

读者登录窗口:

个人信息维护:

在线教程:

在线阅读:

六:实践体会与建议

经过这次实践让我感觉到编程方面课本知识听着明白与动手做出系统是有很大区别的。有些知识知道是什么意思,但是就是不知道如何去用,一直在读死书。通过学习虽然知道三层架构一些概念,但是等到实践时却是遇到很多麻烦,有点不知所措,不知道如何下手。这就需要自己去查阅资料,去和小组成员商量与探讨。通过此次小组实践确实让我对编程和三层架构方面有了更好的理解,并且知道课本一些知识的原理,知道如何去运用。首先你要在一个解决方案下建立表示层、业务逻辑层(类库)、数据访问层(类库)。然后在业务逻辑层添加数据访问层的引用,在表示曾添加业务逻辑层的引用。

如果你

觉得有必要,还要加上Model层(实体层),然后分别在业务逻辑层和数据访问层添加Model层的引用。

刚接触三层架构系统时,各种不熟悉,不知道为何去用三层架构,还那么复杂。通过学习与实践才懂得三层架构对于开发有很多好处,开发人员可以只关注整个结构中的其中某一层,可以很容易的用新的实现来替换原有层次的实现;可以降低层与层之间的依赖;有利于标准化;利于各层逻辑的复用。

最后,自己通过参与到小组开发项目中,确实学到了很多东西,至少不会一直在读死书了,懂得了如何和小组成员进行合作,如何去开发一个系统,如何将课本知识如何应用。总之,做永远比说和自己无谓的感觉重要,只有你做了你才知道自己水平如何。


© 2024 实用范文网 | 联系我们: webmaster# 6400.net.cn