网络编程技术
试卷代号:7956 座位号
河南广播电视大学2008—2009学年度第一学期期末考试
高级网页制作技术 试题
2009年1月
一、判断题(在括号中填√或×,每小题2分,共20分)
1、ASP.NET页的默认扩展名是ascx。( )
2、在.Net中,类System.Web.UI.Page 不可以被继承。( ) 3、String.ToLower的功能是将字符串转换为大写。( )
4、 ASP.NET中,使用验证控件来验证用户输入,要求用户不可跳过该项输入,并且用户输入值在0和1000之间,则适用RequiredFieldValidator和RangeValidator控件。( )
5、Command对象的ExxcuteNonQuery方法只是返回执行SQL语句或存储过程受影响的记录行数。( )
6、定义控件时如果只需要一行,则标签应当以 />结尾。 ( ) 7、可以通过语句 myDataView.Sort= “EmployeeID” 对数据试图进行数据过滤。( ) 8、DataReader是只能向前的只读游标,Dataset是内存中的表。( ) 9、同一个DataTable可以属于多个DataSet。( )
10、DirectoryInfo类提供静态方法,不需要创建对象就可以直接使用。( )
高级网页制作技术 试题 第 1 页 共 14 页
二、选择题(选择一个正确答案的代码填入括号中,每空2分,共20分)
1、CLR是指( )。
A. 通用语言系统
B. 通用语言规范 D. 中间语言
C. 公共语言运行库
2、float f=-123.567F; int i=(int)f;i的值现在是( )。
A. -123.567F C. 123
B. -123.567 D. -123
3、下面这段代码中,变量subString的结果是( )。 string aString = "Left Center Right"; string subString = aString.Substring(1, 4); A. "eftC. "Left
" "
B. "
Left"
D. "Left"
4、C#的数据类型有( )
A.值类型和调用类型; C.引用类型和关系类型;
B.值类型和引用类型; D.关系类型和调用类型;
5、ASP.NET框架中,服务器控件是为配合Web表单工作而专门设计的。服务器控件有两种类型,它们是( )
A.HTML控件和Web控件 C.XML控件和Web控件
B.HTML控件和XML控件 D.HTML控件和IIS控件
6、包含在DataSet集合中的集合是( )。
A. Tables集合 C. Rows集合
B. Columns集合 D. Parameters集合
7. 在ADO.NET 中,为访问DataTable 对象从数据源提取的数据行。可使用DataTable 对象的( )属性。
A. Rows
B. Columns D. DataSet
C. Constraints
8、以下语句获取表中第1行第1列(FirstName列)的数据,其中正确的语句是( )。
A. myTable.Rows[0]["FirstName"] B. myTable.Rows[1]["FirstName"]
高级网页制作技术 试题 第 2 页 共 14 页
C. myTable.Rows[0][1] D. myTable.Rows[1][0]
9、为了在程序中使用DataSet 类定义数据集对象,应在文件开始处添加对命名空间
( )的引用。 A. System.IO
B. System.Utils D. System.DataBase
C. System.Data
10、 DataAdapter 对象使用与( )属性关联的 Command 对象将DataSet 修改的数据保存入数据源。
A. SelectCommand C. UpdateCommand
三、简答题(每小题5分,共10分)
1、请列举ASP.NET页面之间数据传递的几种常用的方法。 答:
2、简述使用DataReader获取数据的步骤。 答:
四、程序题(共50分)
说明:按各小题的要求,填入程序中不完整的部分。
高级网页制作技术 试题 第 3 页 共 14 页
B. InsertCommand D. DeleteCommand
1、以下程序是实现简单的发表留言,显示留言的功能(每空2分,共20分)。 Default.aspx代码: „„
姓名
留言
- |
„„
Default.aspx.cs代码: using System; using System.Data; using ( 1 ) ; using System.Configuration; using System.Web;
高级网页制作技术 试题 第 4 页 共 14 页
using System.Web.Security; using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls;
public partial class _Default : System.Web.UI.Page {
protected void Page_Load(object sender, EventArgs e) {
if ( ( 2 ) )
{ } }
protected void btn_SendMessage_Click(object sender, EventArgs e) {
SqlConnection
conn
=
new
SetBind();
SqlConnection(@"server=(local)\SQLEXPRESS;database=GuestBook;Trusted_Connection=True"); string
Sql
=
"
(
3
)
tbGuestBook
(UserName,PostTime,Message,IsReplied,Reply) VALUES ('" + tb_UserName.Text + "','" + DateTime.Now + "','" + tb_Message.Text + "',0,'')"; SqlCommand cmd = new SqlCommand( ( 4 ) , conn); conn.Open();
cmd. ( 5 ) ; conn. ( 6 ) ; SetBind(); }
高级网页制作技术 试题 第 5 页 共 14 页
private void SetBind() {
SqlConnection
conn
=
new
SqlConnection(@"server=(local)\SQLEXPRESS;database=GuestBook;Trusted_Connection=True");
string Sql = "SELECT * FROM tbGuestBook ( 7 ) PostTime DESC"; SqlDataAdapter da = new SqlDataAdapter(Sql, conn); DataSet ds = new DataSet(); da. ( 8 ) (ds); DataTable dt = ds.Tables[0]; rpt_Message. ( 9 ) = dt; rpt_Message. ( 10 ) ; } } 答:
(1) (2) (3) (4) (5) (6) (7) (8) (9) (10) 2、以下程序的功能是利用DataGrid控件实现数据表的分页显示(每页显示10条),请补充完整实现此功能的主要代码(共15分)。
Default.aspx代码: ......
演示DataGrid的分页功能
高级网页制作技术 试题 第 6 页 共 14 页
AutoGenerateColumns=“False" AllowPaging="True" PageSize=10
PagerStyle-PrevPageText="前页" PagerStyle-NextPageText="后页"
OnPageIndexChanged="DataGrid_PageChanged" >
......
Default.aspx.cs代码:
using System; using System.Data;
(1) using System.Configuration; using System.Web;
using System.Web.Security; using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls;
public partial class _Default : System.Web.UI.Page {
高级网页制作技术 试题 第 7 页 共 14 页
OleDbConnection MyConn;
protected void Page_Load(object sender, EventArgs e) {
//连接语句
string MyConnString = "Provider=Microsoft.Jet.OLEDB.4.0; Data
Source="+Server. MapPath (".")+"..\\DataBase\\exam1.mdb;";
MyConn = new OleDbConnection(MyConnString); MyConn.Open(); if(!IsPostBack) { } }
ICollection CreateTable() {
string strSel = "select * from UserList"; DataSet ds = new DataSet();
OleDbDataAdapter MyAdapter = new OleDbDataAdapter(strSel,MyConn); (2) }
public void BindGrid() {
(3) }
protected void usrGrid_PageIndexChanged(object sender, EventArgs e) {
(4) }
高级网页制作技术 试题 第 8 页 共 14 页 BindGrid();
} 答:
(1) (2分) (2) (4分) (3) (4分) (4) (5分)
3、下面程序实现了简单的文件上传功能。请根据程序代码中的注释将程序补充完整(15分)。 Default.aspx代码 „„
ID="btn_Upload"
runat="server"
Text="
上
传
文
件
"
OnClick="btn_Upload_Click" /> „„
Default.aspx.cs代码 „„
protected void btn_Upload_Click(object sender, EventArgs e) {
//判断用户是否选择了文件 if ( (1) ) {
//调用自定义方法判断文件类型是否符合要求 if (IsAllowableFileType()) {
//调用自定义方法判断文件大小是否符合要求
高级网页制作技术 试题 第 9 页 共 14 页
if (IsAllowableFileSize()) {
//从config中读取文件上传路径 string strFileUploadPath =
ConfigurationManager.AppSettings["FileUploadPath"].ToString();
//从UploadFile中读取文件名
string strFileName = (2) ; //组合成物理路径
string strFilePhysicalPath =
Server. (3) (strFileUploadPath + strFileName);
//保存文件
(4)
} else {
//调用自定义方法显示提示
ShowMessageBox("文件大小不符合要求,请参看上传限制"); } } else {
//调用自定义方法显示提示
ShowMessageBox("文件类型不符合要求,请参看上传限制"); } } else {
//调用自定义方法显示提示
高级网页制作技术 试题 第 10 页 共 14 页
ShowMessageBox("请选择一个文件");
}
}
private bool IsAllowableFileSize()
{
//从config中读取上传文件大小限制
double iFileSizeLimit =
Convert.ToInt32(ConfigurationManager.AppSettings["FileSizeLimit"])*1024; //文件大小是否超出了大小限制
if (iFileSizeLimit > (5) )
return true;
else
return false;
}
private bool IsAllowableFileType()
{
//从config中读取上传文件类型限制
string strFileTypeLimit =
ConfigurationManager.AppSettings["FileTypeLimit"].ToString(); //当前文件扩展名是否能在这个字符串中找到?
if (strFileTypeLimit.IndexOf( (6) ) > -1)
return true;
else
return false;
}
„„
答:
(1) (2分)
高级网页制作技术 试题 第 11 页 共 14 页
(2) (2分)
(3) (2分)
(4) (3分)
(5) (3分)
(6) (3分)
试卷代号:7956
河南广播电视大学2008—2009学年度第一学期期末考试
高级网页制作技术 试题答案及评分标准
(供参考)
2009年1月
一、判断题(每小题2分,共20分)
1、╳ 2、╳ 3、╳ 4、√ 5、√
6、√ 7、╳ 8、√ 9、╳ 10、╳
二、选择题(每空2分,共20分)
1、C 2、D 3、A 4、B
6、A 7、A 8、A 9、C 5、A 10、C
三、简答题(每小题5分,共10分)
1、请列举ASP.NET页面之间数据传递的几种常用的方法。
答:(1) Request.QueryString
高级网页制作技术 试题 第 12 页 共 14 页
(2)Session
(3)Application
(4)Cookie
(5)Viewstate
(6)Cache
2、简述使用DataReader获取数据的步骤。
答:(1) 创建一个连接对象;
(2) 创建一个包含相应数据库查询语句的命令对象;
(3) 打开该连接对象;
(4) 定义一个DataReader变量,并执行命令对象的ExecuteReader方法将结果返回给定义的DataReader变量;
(5) 使用DataReader的Read方法循环读取数据记录并进行相应处理;
(6) 关闭命令和连接。
四、程序填空(共50分)
1、(每空2分,共20分)
(1) System.Data.SqlClient (2) !IsPostBack (3) INSERT INTO (4) Sql (5) ExecuteNonQuery() (6) Close() (7) ORDER BY (8) Fill (9) DataSource (10) DataBind()
2、(共15分)
(1): using System.Data.OleDb;(2分)
(2): MyAdapter. Fill (ds);(2分)
return ds.Tables[0];(2分)
(3): usrGrid.DataSource = CreateTable();(2分)
usrGrid. DataBind ();(2分)
(4): usrGrid.CurrentPageIndex = e.NewPageIndex; (3分)
BindGrid();(2分)
3、(共15分)
高级网页制作技术 试题 第 13 页 共 14 页
(1):FileUpload1.HasFile (2分)
(2):FileUpload1.FileName (2分)
(3):MapPath (2分)
(4):FileUpload1.SaveAs(strFilePhysicalPath) (3分)
(5):FileUpload1.PostedFile.ContentLength (3分)
(6):Path.GetExtension(FileUpload1.FileName).ToLower() (3分)
高级网页制作技术 试题 第 14 页 共 14 页