第一次运行时给Cache赋于值类型时,第二次运行时去掉赋值这段程序,Cache的数据还是能输出
相反如果是引用类型二次运行时,报引用类型数据是空的,这是什么??????第一次运行时加
<script language="C#" runat="server"> public class Data
{
public string STR;
public Data(string s)
{
STR = s;
}
}</script>
第一次加 结束<%
//赋值
for(int i=0; i< 10; i++)
{
//值类型时
Cache[i.ToString()] = 1;

//引用类型时
Cache[i.ToString()] = new Data(i.ToString());
}

IDictionaryEnumerator CacheEnum = Cache.GetEnumerator();

while(CacheEnum.MoveNext())
{
DictionaryEntry cacheItem = (DictionaryEntry)CacheEnum.Current;

//引用类型时
Data data = cacheItem.Value as Data;
Response.Write("Key:" + cacheItem.Key + "Data:" + cacheItem.Value + "<br>"); //值类型时
Response.Write("Key:" + cacheItem.Key + "Data:" + data.STR + "<br>");
}
%>