• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

ASP.NET中的Code Behind技术(4)

发布: 2007-6-30 18:56 | 作者: admin | 来源: | 查看: 13次 | 进入软件测试论坛讨论

领测软件测试网      4).开始创建Code Behind文件
  
    如果上面的页面能够成功运行,接下来就要把程序代码从界面设计代码中分离出来。这要通过以下步骤来完成。
  
    a).创建一个.cs源程序文件
  
    在你的应用程序的主机的虚拟目录下建立文件名为"Send.cs",并且用文本编辑器打开此文件。
  
    b).拷贝脚本到send.cs程序文件
  
    把mail.ASPx中的<script runat="server">到</script>中的所有内容(包括脚本的表示符),剪切到send.cs文件中。
  
    C).修改.cs文件
  
    必须保证send.cs文件是一个正确的C#文件,因此必须对此时的.cs文件进行必要的修改,下面列出修改前后的文件代码,比较一下二者差异:
  
    没有修改的C#文件,如下:
  
  <script runat="server">
  protected void Post_Form(object sender, EventArgs e)
  {
   file://判断姓名和电子邮件地址是否填入
   if(Name.Value!=""&&Email.Value!="")
   {
    file://发送电子邮件
    System.Web.Mail.SmtpMail.Send(Email.Value,
      "majinhu@yesky.com",
      "Mail From:"+Name.Value,Message.Value);
    }
  }
  </script>
  
    完成修改后的文件,如下:
  
  using System;
  using System.Web.UI;
  using System.Web.UI.HtmlControls;
  public class First:Page
  {
  file://声明使用的组件
  protected HtmlInputControl Name, Email;
  protected HtmlTextArea Message;
  public void Post_Form(object sender, EventArgs e)
  {
  file://判断姓名和电子邮件地址是否填入
  if(Name.Value!=""&&Email.Value!="")
  {
  file://发送电子邮件
  System.Web.Mail.SmtpMail.Send(Email.Value,"majinhu@yesky.com",
  "Mail From:"+Name.Value,Message.Value);
  }
  }
  }
  
  
    注释:
  
    第一:这种修改必须要引入必要的名称空间,在本段程序中用到的名称空间是"System","System.Web.UI"和"System.Web.UI.HtmlControls"。
  
    第二:用"public class First:Page {" 标识来替代 <script runat="server"> 结束的标识符</script> 用"}"来替代。
  
    第三:最后我们还要声明在程序中用到的组件。
  
    D).修改界面设计文件(mail.aspx)
  
    上述的工作完成以后,就要修改界面设计文件,让ASP.NET的运行环境知道在哪里装入Code Behind文件。于是就进行下列修改,修改后的代码如下:
  
    mail.aspx
  
  
  <%@ Page Language="C#" Inherits="First" Src="send.cs" %>
  <html>
  <head>
  <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
  <meta name="GENERATOR" content="Microsoft FrontPage 4.0">
  <meta name="ProgId" content="FrontPage.Editor.Document">
  <title>New Page 1</title>
  </head>
  <body>
  <h3>欢迎进入Code Behind设计界面</h3>
  <form runat="server">
  <table border="1" width="100%">
  <tr>
  <td width="100%" colspan="2">请填入下列各项</td>
  </tr>
  <tr>
  <td width="35%">姓名</td>
  <td width="65%">
  <input type="text" id="Name" name="Name" size="20" runat="server" />
  </td>
  </tr>
  <tr>
  <td width="35%">电子邮件地址</td>
  <td width="65%">
  <input type="text" id="Email" name="Email" size="20" runat="server" />
  </td>
  </tr>
  <tr>
  <td width="35%">内容</td>
  <td width="65%"><textarea rows="7" id="Message"
  name="Message" cols="26" runat="server">
  </textarea></td>
  </tr>
  <tr>
  <td width="100%" colspan="2">
  <input type="submit" value="Submit" id="B1" name="B1" OnServerClick="Post_Form"
  runat="Server" />
  </td>
  </tr>
  </table>
  </form>
  <p> </p>
  </body>
  </html>
  
    注释:
  
    其中的第一句语句很重要,在这个语句中,指定了二个属性:"Inherits"和"Src"。其中"Inherits"用来识别本页面所用的类来自何处。"Src"是指定识别代码文件,这句话的意思是指定了页面所用的类名和类所在文件的来源。此时把Mail.aspx和Send.cs拷贝到"c:\.netPub\WWWRoot"中,打开浏览器,就可以运行程序了。
  
    五.总结
  
    Code Behind的出现使得编写功能强大Web程序成为了一件相对容易的事情,Code Behind的功能十分强大,制作又相对灵活。非常适合喜欢组件编程的朋友。
  
  

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网