日期:2014-05-20  浏览次数:20804 次

如何最大限度提高.NET的性能
优化   .NET的性能

1)避免使用ArrayList。
          因为任何对象添加到ArrayList都要封箱为System.Object类型,从ArrayList取出数据时,要拆箱回实际的类型。建议使用自定义的集合类型代替ArrayList。.net   2.0提供了一个新的类型,叫泛型,这是一个强类型,使用泛型集合就可以避免了封箱和拆箱的发生,提高了性能。

2)使用HashTale代替其他字典集合类型(如StringDictionary,NameValueCollection,HybridCollection),存放少量数据的时候可以使用HashTable.

3)为字符串容器声明常量,不要直接把字符封装在双引号 "   "里面。
            //避免
            //
            MyObject   obj   =   new   MyObject();
            obj.Status   =   "ACTIVE ";

            //推荐
            const   string   C_STATUS   =   "ACTIVE ";
            MyObject   obj   =   new   MyObject();
            obj.Status   =   C_STATUS;

4)   不要用UpperCase,Lowercase转换字符串进行比较,用String.Compare代替,它可以忽略大小写进行比较.
     
      例:
 
            const   string   C_VALUE   =   "COMPARE ";
            if   (String.Compare(sVariable,   C_VALUE,   true)   ==   0)
            {
            Console.Write( "SAME ");
            }


5)   用StringBuilder代替使用字符串连接符   “+”,.  

            //避免
            String   sXML   =   " <parent> ";
            sXML   +=   " <child> ";
            sXML   +=   "Data ";
            sXML   +=   " </child> ";
            sXML   +=   " </parent> ";

            //推荐
            StringBuilder   sbXML   =   new   StringBuilder();
            sbXML.Append( " <parent> ");
            sbXML.Append( " <child> ");
            sbXML.Append( "Data ");
            sbXML.Append( " </child> ");
            sbXML.Append( " </parent> ");

6)   If   you   are   only   reading   from   the   XML   object,   avoid   using   XMLDocumentt,   instead   use   XPathDocument,   which   is   readonly   and   so   improves   performance.  
如果只是从XML对象读取数据,用只读的XPathDocument代替XMLDocument,可以提高性能
            //避免
            XmlDocument   xmld   =   new   XmlDocument();
            xmld.LoadXml(sXML);
            txtName.Text   =   xmld.SelectSingleNode( "/packet/child ").InnerText;

.  

            //推荐