基于NET技术的网上学习系统的设计与开发
2007-03-06宋尚平李兴保
宋尚平 李兴保
摘要介绍NET技术的网上学习系统的设计与开发,在分析其内涵、功能模块、优势的基础上,简要介绍了主要文件及其代码的实现。
关键字ASP.NET; 网上学习系统; 设计;开发
中图分类号TP393文件标识码:A 文章编号:1671-489X(2007)02-0059-04
Design and Development based on Net Technology Learning System//Li Xingbao, Song Shangping
Abstract On the bases of analyzing the connotation, function module and the advantage, the paper introduces the realization of main documents and code.
Key words active server page.net(ASP.NET); web learning system; design; development
Author's address Information Technology & Media, Qufu Normal University, Rizhao, Shangdong 276826
随着信息化社会的高速发展,越来越多的学习内容出现在计算机网络当中。在教育教学当中,如何使学生了解和使用这些知识呢?基于此问题,我们设计了网上学习系统, 以便学生能够充分利用各种计算机网络信息,加强学生的自学能力,无论对学生还是教师都是大有益处的。
笔者所采用的是ASP.NET语言、SQL Server2000数据库、Dreamweaver和UltraEdit等开发工具; ASP.NET开发平台:操作系统采用Windows 2000 Server;Web服务器采用IIS5.1以及 NET Framework SDK 2005、 Internet Explorer 6。
1 学习系统的涵义及优势
1.1学习系统的涵义
关于网上学习系统的定义,没有一个固定的说法。笔者认为网上学习系统的涵义是:以计算机网络为基础,由专业人员设计的能够利用网络上的各种知识信息,并把这些信息筛选之后供学习者自行选择学习的软件系统。基于NET技术的网上学习系统就是以ASP.NET作为技术支撑构建的网上学习系统。
1.2学习系统的优势
基于ASP.NET技术的网上学习系统的优势主要体现在以下几个方面:
1)代码不仅更容易编写,而且更加干净整洁,更易于阅读。同时,ASP.NET代码的结构方式提高了系统的再利用性和共享性。
2)改进了系统的配置、伸缩性、安全性和可靠性。
3)对各种不同的浏览器提供了更好的支持。
4)ASP.NET 造就了一类新的Web应用程序,使系统动态性和伸缩性更好。
2 系统功能描述及功能模块的划分
2.1系统功能描述
网上学习系统的主要功能包括用户登陆管理、学习内容分类管理、学习内容发布管理、学习内容更新、删除管理、学习内容查询管理、学习内容浏览等几大模块。具体描述如下“
1)用户登陆管理
2)学习内容分类管理
学习内容类别的增加,包括类别的名称和类别编号;学习内容类别信息的修改;学习内容类别的删除。
3)学习内容发布管理
学习内容基本信息的发布;其他资料上传功能。
4)学习内容更新、删除管理
学习内容信息更改;学习内容的删除。
5)学习内容查询管理
学习内容分类信息列表;学习内容检索。
6)学习内容浏览
学习内容详细信息浏览和学习内容评论浏览;发表学习内容评论;分类学习内容列表。
2.2 功能模块的划分
根据以上的系统功能描述,设计功能模块图,如图1所示。
图1 功能模块图
经过分析,系统的参与人员有2种:匿名用户和管理员。匿名用户作为系统的普通用户,这里我们不需要特定的用户名,所以不需要进行系统的身份验证。普通用户通过页面查询出所需要的学习内容,进行学习内容详细信息的浏览和发表自己对学习内容的评论。管理员具有管理该系统的权限,可以进入后台管理系统进行学习内容信息的管理。
3 主要文件代码
由于用户登陆等这些模块的实现比较简单,这里不作介绍。主要叙述以下2个主要功能模块,当然也是开发过程中最难实现的。
3.1Content.aspx的设计与编码
Content.aspx提供了两个功能:
1)按照参数列出该类别的学习内容列表。
2)按照参数检索出符合条件的学习内容列表。
Content.aspx的HTML代码如下:
<%@PageLanguage="vb"AutoEventWireup="false"Codebehind="Content.aspx.vb"Inherits="TheContentYS.Content"%>
<!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.0Transitional//EN">
<HTML>
<HEAD>
<metaname="vs_snapToGrid"content="False">
<title>Content</title>
<metacontent="MicrosoftVisualStudio.NET"name="GENERATOR">
<metacontent="VisualBasic.NET"name="CODE_LANGUAGE">
<metacontent="JavaScript"name="vs_defaultClientScript">
<metacontent="http://schemas.microsoft.com/intellisense/ie6"name="vs_targetSchema">
</HEAD>
<bodyMS_POSITIONING="GridLayout">
<formid="Form1"method="post"runat="server">
<center>
<TABLEid="Table1"style="BORDER-RIGHT:#dd11222pxsolid;BORDER-TOP:#dd11222pxsolid;BORDER-LEFT:#dd11222pxsolid;BORDER-BOTTOM:#dd11222pxsolid"
cellSpacing="0"cellPadding="0"width="600"border="0">
<TR>
<TD><IMGsrc="http://127.0.0.1//xinchuan/net//1.jpg"></TD>
</TR>
<TR>
<TD><FONTface="宋体"></FONT></TD>
</TR>
<TR>
<TD>
<TABLEid="Table2"style="BORDER-RIGHT:#0042001ptsolid;BORDER-TOP:#0042001ptsolid;BORDER-LEFT:#0042001ptsolid;BORDER-BOTTOM:#0042001ptsolid"
cellSpacing="0"cellPadding="0"width="600"border="0">
<asp:datalistid="List1"runat="server"BorderColor="#dd1122"BorderWidth="2pt">
<AlternatingItemStyleBackColor="Azure"></AlternatingItemStyle>
<HeaderStyleFont-Size="Larger"Font-Bold="True"ForeColor="Azure"BackColor="#dd1122"></HeaderStyle>
<ItemTemplate>
<tr>
<TDalign="left"style="FONT-WEIGHT:bold;FONT-SIZE:13pt;BACKGROUND-COLOR:darkgray">标题:
<ahref='<%#"TheContent.aspx?aid="&databinder.eval(container.dataitem,"id")%>'target=_blank>
<%#databinder.eval(container.dataitem,"title")%>
</a>
</TD>
</tr>
<tr>
<TDalign="left"style="FONT-SIZE:11pt;BACKGROUND-COLOR:lightgrey">
id:<%#databinder.eval(container.dataitem,"id")%>
作者:<%#databinder.eval(container.dataitem,"writer")%>
时间:<%#databinder.eval(container.dataitem,"time")%>
学习次数:<%#databinder.eval(container.dataitem,"cishu")%>
</TD>
</tr>
<tr>
<TDalign="left"style="FONT-SIZE:11pt;BACKGROUND-COLOR:lightgrey">关键字[<%#databinder.eval(container.dataitem,"kw")%>]</TD>
</tr>
<tr>
<TDalign="left"style="TEXT-INDENT:11pt;BACKGROUND-COLOR:seashell">
学习摘要:<br>
...<%#mid(databinder.eval(container.dataitem,"content"),50,200)%>...<br>
</TD>
</tr>
</ItemTemplate>
</asp:datalist></TABLE>
</TD>
</TR>
<TR>
<TD><asp:labelid="Label1"runat="server"></asp:label><asp:linkbuttonid="LinkButton4"runat="server">第一页</asp:linkbutton>
<asp:linkbuttonid="LinkButton1"runat="server">上页</asp:linkbutton><asp:linkbuttonid="LinkButton2"runat="server">下页</asp:linkbutton>
<asp:linkbuttonid="LinkButton3"runat="server">末页</asp:linkbutton></FONT></TD>
</TR>
</TABLE>
</center>
</form>
</body>
</HTML>
3.2TheContent.aspx的设计与编码
TheContent.aspx是具体显示学习内容的页面,按照传入的ID,从数据库中检索出学习内容,并把内容显示出来。
TheContent.aspx的HTML代码如下:
<%@PageLanguage="vb"AutoEventWireup="false"Codebehind="TheContent.aspx.vb"Inherits="TheContentYS.TheContent"%>
<%@RegisterTagPrefix="uc1"TagName="tealker"Src="tealker.ascx"%>
<!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.0Transitional//EN">
<HTML>
<HEAD>
<titlerunat="server"id="Mytitle"></title>
<metacontent="MicrosoftVisualStudio.NET"name="GENERATOR">
<metacontent="VisualBasic.NET"name="CODE_LANGUAGE">
<metacontent="JavaScript"name="vs_defaultClientScript">
<metacontent="http://schemas.microsoft.com/intellisense/ie6"name="vs_targetSchema">
</HEAD>
<bodyMS_POSITIONING="GridLayout">
<formid="Form1"method="post"runat="server">
<center>
<TABLEid="Table1"style="BORDER-RIGHT:#4261ac1ptsolid;BORDER-TOP:#4261ac1ptsolid;BORDER-LEFT:#4261ac1ptsolid;BORDER-BOTTOM:#4261ac1ptsolid"
cellSpacing="0"cellPadding="0"width="600"background="images/bg1.gif"border="0">
<TR>
<TD></TD>
<TDalign="right">
<TABLEid="Table2"style="BORDER-RIGHT:#4261ac1ptsolid;BORDER-TOP:#4261ac1ptsolid;BORDER-LEFT:#4261ac1ptsolid;WIDTH:600px;BORDER-BOTTOM:#4261ac1ptsolid;HEIGHT:50px"
cellSpacing="0"cellPadding="0"width="600"border="0">
<TR>
<TDstyle="FONT-WEIGHT:bold;FONT-SIZE:14pt;COLOR:white;HEIGHT:50px;BACKGROUND-COLOR:#4261ac"
align="center"><asp:labelid="Label1"runat="server">Label</asp:label></TD>
</TR>
<TR>
<TDstyle="BORDER-RIGHT:#4261ac1ptsolid;BORDER-TOP:#4261ac1ptsolid;FONT-SIZE:10pt;BORDER-LEFT:#4261ac1ptsolid;BORDER-BOTTOM:#4261ac1ptsolid;HEIGHT:30px;BACKGROUND-COLOR:azure"
align="center"><asp:labelid="Label2"runat="server">Label</asp:label></TD>
</TR>
<TR>
<TDstyle="BORDER-RIGHT:#4261ac1ptsolid;BORDER-TOP:#4261ac1ptsolid;FONT-SIZE:10pt;BORDER-LEFT:#4261ac1ptsolid;BORDER-BOTTOM:#4261ac1ptsolid;HEIGHT:30px;BACKGROUND-COLOR:azure"
align="center"><asp:labelid="Label4"runat="server">Label</asp:label></TD>
</TR>
<TR>
<TDstyle="FONT-SIZE:11pt;LINE-HEIGHT:20pt"><asp:labelid="Label3"runat="server">Label</asp:label></TD>
</TR>
<TR>
<TDstyle="BORDER-BOTTOM:#dd1122thinsolid"><br>
</TD>
</TR>
<TR>
<TD><br>
</TD>
</TR>
<TR>
<TDalign="center"><uc1:tealkerid=Tealker1runat="server"aid='<%#Request.Params("aid")%>'></uc1:tealker></TD>
</TR>
</TABLE>
<P></P>
</TD>
</TR>
</TABLE>
</center>
</form>
</body>
</HTML>
以上就是2个主要文件的前台代码,尽管它的实现不是特别复杂,但是笔者却希望它能够起到抛砖引玉的作用,使大家能够了解并使用它。
4结束语
本系统有很高的应用价值,特别是在教育教学领域具有极其广阔的应用前景,当然这系统将会在实践中不断的完善,以满足网络信息的不断发展以及用户的需求。只有这样,网上学习系统才能发挥出更大的作用。