• 40条ASP.NET开发知识


    1、在compilation 下,请设置debug=false ,如下:

    default Language="c#" debug="false">

    2、请使用Server.Transfer代替Response.Redirect。

    3、使用Validator控件,请要经常检查Page.IsValid。

    4、请使用foreach循环,而不是为字符串迭代循环。

    5、请使用客户端验证方式(不要每次都在服务端验证)。

    6、为了避免重复代码执行,请检查“Page.IsPostBack”。

    7、GIF 和PNG类似,但是PNG通常产生一个较小体积的文件。(当然,有些浏览器不支持PNG格式)

    8、更新二进制文件时,请使用AppOffline.htm 。

    9、除非需要,否则请关闭跟踪。

    < trace  enabled ="false"  requestLimit ="10"  pageOutput ="false"  traceMode ="SortByTime"  localOnly ="true" />

    10、编译页面,请禁用AutoEventWireup。在Machine.config 文件中请设置AutoEventWireup为false。

    11、如果不需要,请关闭Session会话。

    < sessionstate  timeout ="20"  cookieless ="false"  mode ="Off"  stateconnectionstring ="tcpip=127.0.0.1:42424"  sqlconnectionstring ="data source=127.0.0.1;Trusted_Connection=no" >

     

    12、在你生成最终版本的应用程 序之前,请选择Release模式。默认是Debug。

     

    13、如果不需要请禁用 ViewState 。

    EnableViewState="false"

    14、请避免频繁的访问数据库。

    15、使用缓存提高你的应用程序的性能。

    16、验证所有的用户输入。

    17、请最后释放所有资源。

    18、String 和Stringbuilder。

          修改字符串时,使用Stringbuilder而不是String ,在每次字符串修改的时候,String都会占据不同的内存空间,而Stringbuilder只使用同一个内存空间

    19、切勿直接使用对象的值,先从本地变量获取对象的值,然后再使用。因为直接读取对象的值比读取变量更花时间。

    20、避免异常:使用if。

    21、代码优化:避免使用:x = x +1,而是使用x+=1比较好。

    22、数据访问技术:DataReaders提供快速有效的数据检索方法。在性能方面,DataReader是速度远远超过DataSets 。

    23、在做一个笨重的ASP代码的处理之前,你进行检查以确保Response.IsClientConnected。

    24、避免session变量,因为每个ASP页面是在不同的线程运行和session调用将会被逐一序列化。这样会降低应用程序。你可以使用 QueryString集合或者表单上面的hidden变量来保存值。

     
    25、使buffer有效,能提高性能,如:
    <%  response.buffer = true   %>

     接着使用:

    <%  response.flush = true   %>

    26、使用Repeater控件代替DataGrid,DataList,因为它是高效的,可定制的,和可编程的。

    27、在数据库中检索大量数据,数据列表消耗更多的时间。

        分页将显示特定的数据,但是要考虑所有数据负载。只取当前页需要的数据。

    28、避免内嵌JavaScript和CSS。

    29、使用单个的css文件,而不是多个css文件。

        请尽量将您所有的css合并成一个css的类文件,不管文件大小,大量的.css文件会造成大量的请求。.css文件通常是由浏览器缓存,这样一个单一的 沉重的.css文件不会导致在每个页面请求时会有漫长的等待。
        内嵌.CSS类导致HTML沉重,因此我觉得:首先考虑一个single.css文件。
     

    30、减少cookie的大小。

    31、压缩CSS, JavaScript 和Images。

    可以使用在线的压缩,压缩文件,将下列网页和优化的代码替换为您的文件内容。

    http://iceyboard.no-ip.org/projects/css_compressor [^ ]  CSS 压缩
    www.xtreeme.com/javascript-optimizer/ [^ ] .  JS 压缩

    32、适当地使用缓存。

    i、页面输出缓存:

    <% @ OutputCache Duration = " 3600 "  VaryByParam = " none "   %>

    ii、页片段缓存:

    在每个用户控件中写页面输出缓存

    iii、数据缓存:

    代码
    < script  language ="C#"  runat ="server" >  
     Protected 
    void  Page_Load (Object src, EventArgs e) 
    {   
     DataView dv 
    =  (DataView) Cache. Get ( " EmployeesDataView " );   
     If (dv 
    ==   null )
     { 
    //  wasn't there
      SqlConnection conn  =      new  SqlConnection ( " server=localhost;uid=sa;pwd=;database=Test " );  
      SqlDataAdapter da 
    = new  SqlDataAdapter ( " select * from Employees " , conn);  
      Dataset ds 
    =   new  DataSet();
      da.Fill(ds, 
    " Employees " );   
      dv 
    =  ds.Tables[ " Employees " ].DefaultView;   
      Cache.Insert (
    " EmployeesDataView " , dv);
      conn.Close();
    }   
     Else   
     Response.Write (
    " <h2>Loaded employees from data cache! </h2> " );  
     lb1.DataSource 
    =  dv;  
     lb1.DataTextField 
    =   " Name " ;    
     lb1.DataValueField 
    =   " Age " ;   
     DataBind () ;
    }   
    </ script >  

    33、服务器端使用诸如Port80s压缩软件http://www.port80software.com/products/httpzip/ [^ ]。

    34、使用了“using”。

    35、不要声明成员变量为 public 或者proteted,尽量使用private 成员变量和public/protected 属性。

    36、使用strString=string.Empty 代替 strString="" 。

    37、请尽可能减轻你的页面文件,尽量避免不必要的标签,例如使用div代替table。

    38、在div中写静态的消息,必要的时候才显示出来。这比你设置服务端的label和div的text属性快。

    39、如果可能的话,一次性检索数据库中的数据。尽可能不要添加数据库的访问。因此,整合来自不同表datafields和选择它们。

    40、给WebControl取个简短的名字。

  • 相关阅读:
    javadoc 自动生成java帮助文档
    JS 长按 移动端
    Java Web 深入分析(8) Servlet工作原理解析
    Java Web 深入分析(7) Jetty原理解析
    flex在众多手机浏览器上的兼容方案(亲测华为手机自带浏览器)
    js 实现纯前端将数据导出excel两种方式,亲测有效
    Git回滚代码到某个commit
    父子组件通信(vuex的方式)
    JS判断单、多张图片加载完成
    css img 等比例自动缩放
  • 原文地址:https://www.cnblogs.com/lizhao/p/1990477.html
Copyright © 2020-2023  润新知