2012-05-14 36 views
0

這是我不能相信的事情,但它正在發生。對象的C#緩存引用字符串

我有以下代碼:

public class UserData 
{ 
    public string displayname; 
    public int age; 
} 

UserData ud = new UserData(); 
ud.displayname = "bar"; 
ud.age = 2; 

HttpContext.Current.Cache.Insert("foo", ud, null, DateTime.Now.AddMinutes(20), TimeSpan.Zero, CacheItemPriority.Normal, null); 

UserData lud = HttpContext.Current.Cache["foo"]; 

HttpContext.Current.Trace.Write("displayname",ud.displayname); 

猜猜是什麼輸出?

"bar" 

引用!!!! (int字段不受影響,它返回爲int,未引用等...)

爲什麼?我搜索了MSDN和谷歌無濟於事。

+0

真的沒有人有想法嗎? –

回答

1

使用ashx頁面查看輸出。