asp简单学习笔记

asp学习:
http://msdn.microsoft.com/zh-cn/library/3yekbd5b(v=vs.80).aspx
1.配置web.config
借助表达式语法<%$...%>,我们可以从配置文件(Web.Config)中取得连接字符串和应用程序设置,或从资源文件(.resx或.resource)中取得特定项的设置值。
http://blog.csdn.net/maji_lulu/article/details/7744299
2.<%%> 需要解释的asp代码, script runat="server"指定运行在服务端。
3.<% dim strsql, rs;
     strsql = "insert into userl() values ();
     set rs=conn.execute(strsql)
  %>
 <%  if session("username") == ""
response.write ("please login!")
     else
response.write("you id is " + session("username");
======http://msdn.microsoft.com/zh-cn/library/ms178135(VS.80).aspx
<form id="form1" runat="server">
    <% for(int i = 0; i < 6; i++) %> <% { Response.Write("<br>" + i.ToString()); }%>
    </form>
======
<%@ Page Language="C#" %>  //
<script runat=server>
protected String GetTime()
{
    return DateTime.Now.ToString("t");
}
</script>
<html>
<body>
    <form id="form1" runat="server">
       Current server time is <% =GetTime()%>.
    </form>
</body>
</html>
======
        <mce:script runat="server"><!--  
            protected string GetTime()  
            {  
                return DateTime.Now.ToString("t");  
            }      
          
// --></mce:script>     <%= GetTime() %>  
=======
asp代码分离。
﹤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();");  

===代码分离,
大家看上面在改动HTML代码的时候稍显麻烦,我们还有一种更简单的方法,只要在后台文件中加入几行代码,我们就不必在HTML中找到控件的位置,加入事件引用了。


在后台文件中加入


protected override void OnInit(EventArgs e)  
//此方法引发Init事件,当服务器控件初始化是发生。  
{  
 初始化控件方法()  
 base.OnInit(e);  
}  
private void初始化控件方法();  
{  
 this.控件名.Click+=new EventHandler(控件事件响应方法);  

====
上面两个方法的加入,我们可以看到,只要我们在后台代码中加入初始化控件的方法,就可以将对应的事件加入进去,而不用在HTML代码中加入事件引用了。同样,我们将常用的Page_Load事件也可以实现


只要加入:


Private void Page_Load(object sender,System.EventArgs e)  
{  
 代码;  
}  
private void初始化控件方法();  
{  
 this.控件名.Click+=new System.EventHandler(控件事件响应方法);  
 this.Load+=new System.EventHandler(this.Page_Load);  

EventHandler:是表示将处理不包含事件数据的事件的方法。
====asp优化
1.ajax避免整个页面加载
2.page_load使用IsPostBack来避免不必要的处理
3.EnableViewState  = false
4.打开缓存设置
5.
=====格式化
<%#Container.DataItem("price","{0:¥#,##0.00}")%>
<%# DataBinder.Eval(Container.DataItem,"Company_Ureg_Date","{0:yyyy-M-d}")%>
取出来,一般是object((DateTime)objectFromDB).ToString("yyyy-MM-dd");
====学习Repeater控件
http://blog.csdn.net/lisky119/article/details/1659219
===动态生成页面控件
page.control.add(new textbox())
http://www.csharpwin.com/dotnetspace/10645r1111.shtml
====
比如生成一个TextBox输入框 
TextBox myText = new TextBox(); 
myText.ID = "textbox1"; 
this.Controls.Add(myText); 
这样就添加到页面上了
取的时候就是FindControl根据ID找到对应的控件,然后判断checked属性就可以了!

你可能感兴趣的:(asp简单学习笔记)