易截截图软件、单文件、免安装、纯绿色、仅160KB
热门标签: c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 最新文章 : asp.net

26个ASP.NET常用性能优化方法


数据库访问性能优化
  数据库的连接和关闭
  访问数据库资源需要创建连接、打开连接和关闭连接几个操作。这些过程需要多次与数据库交换信息以通过身份验证,比较耗费服务器资源。 ASP.NET中提供了连接池(Connection Pool)改善打开和关闭数据库对性能的影响。系统将用户的数据库连接放在连接池中,需要时取出,关闭时收回连接,等待下一次的连接请求。连接池的大小是有限的,如果在连接池达到最大限度后仍要求创建连接,必然大大影响性能。因此,在建立数据库连接后只有在真正需要操作时才打开连接,使用完毕后马上关闭,从而尽量减少数据库连接打开的时间,避免出现超出连接限制的情况。
  使用存储过程
  存储过程是存储在服务器上的一组预编译的SQL语句,类似于DOS系统中的批处理文件。存储过程具有对数据库立即访问的功能,信息处理极为迅速。使用存储过程可以避免对命令的多次编译,在执行一次后其执行规划就驻留在高速缓存中,以后需要时只需直接调用缓存中的二进制代码即可。另外,存储过程在服务器端运行,独立于ASP.NET程序,便于修改,最重要的是它可以减少数据库操作语句在网络中的传输。
  优化查询语句
  ASP.NET中ADO连接消耗的资源相当大, ......

asp.net数据绑定之Eval和Bind 和等区别

Eval是asp.net1.1中常
用的绑定语法,它是“单向”的,即绑定时把数据源上相应的值赋到该控件上,Eval的任务就完成了
而Bind所谓的“双向”就是:在绑定时,把
数据源上相应的值赋到该控件上,并且,在提交时,自动提取用户在该控件上输入的值。
Code
<
EditItemTemplate
>
 
      <
asp:Label 
ID
="CityIDLabel1"
 runat
="server"
 Text
='<%# 
Eval("CityID") %
>
'>
</
asp:Label
>
 
      <
asp:TextBox 
ID
="CityTextBox"
 runat
="server"
 Text
='<%# 
Bind("City") %
>
'> 
</
asp:TextBox
>
 
</
EditItemTemplate
>
 
又例:
Eval:绑定的是只读数据的显
示;Bind:可以绑定只读数据也可以绑定更新数据,Bind方法还把字段和控件的绑定属性联系起来,使得数据控件(比如GridView等)的
Update、Insert和Delete等方法可以使用这种联系来作 ......

在ASP.net中使用动态控件

经常见到有人说在ASP.net中不要使用动态控件,我想主要的原因在于使用动态控件会带来一些问题,在做项目的过程中,我将由动态加载控件引发的总是作了一个小小的总结.
    1 、在使用LoadControl加载控件后,用户控件中的某些控件不再响应事件。
    这个问题主要是由于将控件加载放在if (!Page.IsPostBack)之内引起的,放在外面即可。在思归的blog上对此问题进行了详细的说明。
    2、用户控件中某些控件的响应出现问题,如某个按钮第一次选择时不触发CLICK事件,第二次可以了。
    这是由于没有给控件设置ID引起的,控件ID的作用在下面详细讲述。 如
    Control  userControl=(Control)Page.LoadControl(“Test.ascx”);
    userControl.ID=“Test”;
    AddControl(userControl);
    3、如果用户控件中包括DataGrid控件,那么加载控件后可能出现不响应DataGrid事件的问题。
    这好像是一个bug,必须要将加载的控件进行强制转换,如:
    Test userControl=(Test)Page.Load ......

asp.net 页面类生成及代码隐藏技术

服务器端脚本块:
<script runat="server">
     int my = 10;
</script>
    
分散的脚本    
<%= my.ToString() %>
<% Response.Write(my); %>
        
.aspx文件的内容被解析为类的定义,然后被编译为一个程序集,服务器端脚本块具直接加入到类定义中,分散的脚本被合并成该类的一个Render方法,该方法将所有静动态内容写入响应流中。
  
 使用控件      
     使用控件展示动态内容,类似占位符,controls.add,new htmlform(),controls.add(_form), htmlform.add ,  _kongjian.controls.add("....")
       
  使用数据绑定:
  string[] list = {.......}
  .DataSource = list;
  .DataBind();
 
  代码隐藏
  1.0 版本 (srs,inherits)
  page——中间基类——.aspx文件生成的类(避免在.aspx中加入代码)
  ......

ASP.NET页面与IIS底层交互和工作原理详解

ASP.NET页面与IIS底层交互和工作原理详解 
第一回:
引言
我查阅过不少Asp.Net的书籍,发现大多数作者都是站在一个比较高的层次上讲解Asp.Net。他们耐心、细致地告诉你如何一步步拖放控件、设置控件属性、编写CodeBehind代码,以实现某个特定的功能。
这种做法,实际上是回答了“如何去做”的问题,却没有回答“为什么可以这样做”的问题。
尽管我很推崇 悉江华 先生的《圣殿祭祀的Asp.Net开发详解》一书,但当我翻看了一下其对角色(Role) 和 用户(Member)的讲解时,我决定跳过去直接读后面的章节。因为我发现他也随了大流,对这部分的讲解停留在“如何去做”的层面上。我相信像悉先生 这样的牛人是不可能不了解底层运作原理的,仅仅是因为那本书原本就已经很厚了吧。
当你按“如何去做”所讲解的内容去开发程序的时候,对于你的用户,你仍是一名程序员;但对于实现了MembershipProvider 和 RoleProvider 抽象类的微软开发人员来说,你已经成了他们的一个用户。
NOTE:我既不反对一些作者只讲解“如何去做”,也不反对你只学“如何去做”,这样也有它的好处,就是可以快速开发。我只是建议多掌握一 ......

ASP.NET MVC 2 转换工具

似水流年报告了ASP.NET MVC 2 正式发布,那么我们有许多ASP.NET MVC 1.0的程序需要移植到2.0怎么办呢?Eilon Lipton 已经发布了一篇博文 migration tool for converting ASP.NET MVC 1 application projects,为我们的Visual Studio 2008的MVC项目的迁移准备好工具,主要工作就是转化项目类型,更新程序集的引用和生成配置信息,添加一些新的script文件。
如果你想把项目迁移到Visual Studio 2010,必须用迁移工具后再使用Visual Studio,当然,在4月12日发布的Visual Studio 2010 RTM里头会自带一个迁移工具。
工具下载地址:Download MvcAppConverter-MVC2RTM.zip (255 KB) ......
总记录数:2672; 总页数:446; 每页6 条; 首页 上一页 [133] [134] [135] [136] 137 [138] [139] [140] [141] [142]  下一页 尾页
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号