使用ASP.NET中的一点体会--关于代码分离

发表于:2007-06-30来源:作者:点击数: 标签:
使用ASP.NET中的一点体会[关于代码分离] 最近在进行项目 开发 中,经常会遇到这种情况,就是当用户点击页面上的Button时,系统需要弹出一个窗口。这个窗口可能是标准对话框,也可能是一个新的页面。开始的时候我不知道如何实现这样的功能,按照我以前的编程
     使用ASP.NET中的一点体会[关于代码分离]
  
  最近在进行项目开发中,经常会遇到这种情况,就是当用户点击页面上的Button时,系统需要弹出一个窗口。这个窗口可能是标准对话框,也可能是一个新的页面。开始的时候我不知道如何实现这样的功能,按照我以前的编程习惯,我认为应该有一个类似于ShowMessage的方法,但是,可惜这种方法在WEB下是没有的。通过在网上查阅资料,发现一般的做法是在Button的OnClick事件中写下如下代码:
  private void Button1_Click(object sender, System.EventArgs e)
  {
   string strScript = "<script language=javascript>\n";
   strScript += "window.alert(" + "\"hello\"" + ");";
   strScript += "";
   Response.Write(strScript);
  }
  以上代码的效果就是当用户点击Button1按钮,将会弹出一个对话框。这种做法,其实就是在你的.cs文件中内嵌一段javascript脚本文件。但是,我想大家看到这样的代码,或许会感觉很不舒服,这么多的""很容易晕!如果需要弹出一个页面,并且需要传递参数,那样编写出的代码感觉会更晕!
  后来,我考虑能不能把关于脚本部分都放在.aspx文件里,.cs里直接引用函数名称即可。事实证明是可以的,请看下面的实现方法:
  1.在aspx的之前添加这段代码
  <script language="jscript">
   function showmessagebox()
   {
   window.alert("hello");
   }
  
  2.在cs文件的Page_Load事件里添加以下代码
  private void Page_Load(object sender, System.EventArgs e)
  {
   // 在此处放置用户代码以初始化页面
   this.Button1.Attributes.Add("onclick","javascript:showmessagebox();");
  }
  3.现在当你点击页面上Button1按钮,所产生效果与先前那种方法类似,但是整个系统代码看起来舒服了许多。
  [总结]:使用这样的方法来编写程序,不会使你的程序运行的更快、更稳定....它所起到的作用,只是让你的代码阅读起来更方便,便于与人交流。利用这种思想,我们可以举一反三,尽量不要在cs文件里写大量的javascript脚本文件。如果大家有什么好的想法,欢迎与我交流!
  

原文转自:http://www.ltesting.net