通常我们更改数组长度时,通过创建一个 IList 对象做为中转,然后,移动到一个新数组。这种方式并不是很高效。
最近在 .NET Framework SDK 文档中发现使用 public static Array CreateInstance(Type, int); 方法更高效。
代码如下:
public static Array Change(Array oldArray, int size)
{
    Type type 
= oldArray.GetType().GetElementType();
    Array newArray 
= Array.CreateInstance(type, size);
    
int minLen = Math.Min(oldArray.Length, size);
    
if (minLen > 0)
    {
        Array.Copy(oldArray, newArray, minLen);
    }
    
return newArray;
}

测试代码:
String[] strs = new String[3];
strs[
0= "0";
strs[
1= "1";
strs[
2= "2";
String[] newStrs 
= (String[])ResizeArray.Change(strs, 6);
posted @ 2008-05-27 21:43 wanggh 阅读(40) | 评论 (0)编辑
     摘要: 如何解决Silverlight集成到IIS无法显示页面问题

当我们使用Http方式新建站点时,IIS的默认配置无法显示Silverlight。
主要原因是因为浏览器无法下载.xap文件,因为IIS的默认配置不支持.xap的mime-type。  阅读全文
posted @ 2008-03-09 01:58 wanggh 阅读(2140) | 评论 (4)编辑
     摘要: 假设要编写一个 DoWork 方法来根据传入的集合来处理"逻辑",同时希望能够通过IList, IDictionary, IEnumerator 或者ICollection。为此,可以定义四个不同的 DoWork 方法,  阅读全文
posted @ 2007-03-08 01:53 wanggh 阅读(2640) | 评论 (8)编辑
     摘要: JScript.net 是一种有着广泛应用的现代脚本语言。它是一种真正面向对象的语言,不过仍保留其“脚本”特色。JScript.net 保持与 JScript 以前版本的完全向后兼容性,同时包含了强大的新功能并提供了对公共语言运行库和 .NET Framework 的访问。  阅读全文
posted @ 2007-03-03 18:41 wanggh 阅读(3111) | 评论 (21)编辑