目录
教学资源
教学运行
提醒实验4:异常处理及Windows控件 返回
实验课程:
C#数据库系统开发
开课学院:
商学院
开课专业:
信息管理与信息系统
教材:
软件:
实验指导:
实验介绍

实验4异常处理及Windows控件

一、实验名称和性质

 

所属课程

C#数据库系统开发

实验名称

异常处理及Windows控件

实验学时

2

实验性质

□验证  □综合 □设计

必做/选做

□必做 □选做

 

二、实验目的

1.掌握数据库中对图片的存取流程及代码编写;

2.掌握异常处理机制及异常的捕获;

三、实验的软硬件环境要求

硬件环境要求:

         PC机(单机)

 

使用的软件名称、版本号以及模块:

         Windows XP下的SQL Server 2005(或 SQL Server 2008

四、知识准备

1.异常:它是指程序在运行过程(而非编译过程)中产生的错误。

可以预见,但无法防范的问题,但是,可以处理。如用户输入整数时输入别的字符。

2。异常捕获的格式

try

{

   语句组A//可能产生异常的代码

}

catch [(异常类 对象名)]

{

语句组B //处理异常的代码

}

finally

{

语句组C //完成清理工作的代码

}

五、实验内容

(一)验证试验

1.零除异常。

int n=30000, m=30000;

           try

            {

                 n = 1 / (n - m); 

                MessageBox.Show(n.ToString());

            }

            catch (DivideByZeroException e2)

            {

                MessageBox.Show("零除异常“+e2.Message);       }                   

          catch (ArithmeticException ee)   //

 {

           Console.WriteLine("产生异常:{0}", ee.Message);

}

MessageBox.Show(“try后语句”);     

 

写出结果

int n=30000,m=30000改为double m=30000.01, n=29999.99

2.抛出错误

class TestThrow

{

   public static void F()

   {

      try{ G(); }

   catch(Exception e)

   { Console.WriteLine("Exception in Sub F:"+e.Message);

      e=new Exception("Sub F");

       throw; }

    }

   public static void G()

  {  throw new Exception("Sub G"); }

}

private void button1_Click(object sender, EventArgs e)

        {           

            try { TestThrow.F(); }

            catch (Exception ex)

            { Console.WriteLine("Exception in Main:" + ex.Message); }

        }

 

3. 树视图的操作。

private void btnAdd_Click(object sender, EventArgs e)

        {

           TreeNode tr = new TreeNode();

           tr.Text = txtNodeText.Text;

            if (treeView1.SelectedNode != null)

            {

               treeView1.SelectedNode.Nodes.Add(tr); //当前节点下添加节点

            }

            else

            {

               treeView1.Nodes.Add(tr);   //根节点下添加节点

            }

        }

 

private void btnRemove_Click(object sender, EventArgs e)

        {

            if (treeView1.SelectedNode != null)

            {

               if (treeView1.SelectedNode.Parent != null)

               {

treeView1.SelectedNode.Parent.Nodes.Remove(treeView1.SelectedNode);

               }

               else

               {                    treeView1.Nodes.Remove(treeView1.SelectedNode);

               }

            }

            else

           {               MessageBox.Show("没有选择节点!");            }

        }

 

 

(二)设计性实验

1)按照下图设计窗体界面。点击按钮“插入记录时”将文本框中输入的信息在对话框中显示,学分部分要求输入数据小于6,如输入非数字则提示要输入0-6的数据。如下面界面时正常,显示“C09 C# DB C03  3”.

(提示:将容易出错的转换数据类型的语句用抛出错误处理)

2)窗体中有一个文本框txtName,两个命令按钮“添加”(btnAdd)和删除(btnDelete)。窗体运行就将下表中的内容用树形视图表示出来。

商学院

信息学院

机电学院

张细香

程文

张云

水常青

姚渺

藤姿

Daisy

Kevin

李风青

吴刚











单击添加按钮,在当前树形视图节点的子节点集中添加一个节点,节点的文本设置为文本框中的文本。

单击“删除”按钮,将树形视图中当前选择的节点删除。