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

求泛型问题答案
有方法如下:
        
        /// <summary>
        /// 通用应用程序缓存方法,缓存数据10分钟永不过期
        /// </summary>
        /// <typeparam name="T">委托getdata的返回值</typeparam>
        /// <param name="key">缓存Key</param>
        /// <param name="getdata">获取值得基本方法</param>
        /// <param name="paramobects">向getdata传递的参数</param>
        /// <returns></returns>
        public static T GetCache<T>(string key, Func<T> getdata, params object[] paramobects)
        {
            if (HttpRuntime.Cache[key] == null)
            {
                T dataList = getdata();

                HttpRuntime.Cache.Add(key, dataList, null, Cache.NoAbsoluteExpiration,
                    TimeSpan.FromMinutes(10), System.Web.Caching.CacheItemPriority.High, null);
                return dataList;
            }
            return (T)HttpRuntime.Cache[key];
        }

生成的XML文档节点如下:

<member name="M:DragonUtility.Caching.WebCache.GetCache``1(System.String,System.Func{``0},System.Object[])"><summary> 通用应用程序缓存方法,缓存数据10分钟永不过期 </summary><typeparam name="T">委托getdata的返回值</typeparam><param name="key">缓存Key</param><param name="getdata">获取值得基本方法</param><param name="paramobects">向getdata传递的参数</param><returns/></member>


求教高人:
1. GetCache后边的两个上句号是如何来界定的.为何是两个不是一个.
2. Func后边的两个上句号是如何来界定的.
泛型

------解决方案--------------------
都不知道你在说什么,那就是泛型参数啊 T 
 GetCache中可以传入T,  GetCache中的参数  Func又可以使用这个T参数
------解决方案--------------------
这就是泛型。