Esempio n. 1
0
        private static T GetLocalCfgValueByFileJSV <T>(this string cfgFilePath, T defVal = default(T), TimeSpan expiredTimeOut = default(TimeSpan))
        {
            var val = LocalCache <string, object> .LocalCacheServer.Get(cfgFilePath, null);

            if ((val != null))
            {
                return((T)val);
            }
            var rVal = FileHelp.ReadToEnd(cfgFilePath, string.Empty);

            try
            {
                var rTVal     = TypeSerializer.DeserializeFromString <T>(rVal);
                var cacheTime = expiredTimeOut == default(TimeSpan) ? TimeSpan.FromHours(24) : expiredTimeOut;
                LocalCache <string, object> .LocalCacheServer.Add(cfgFilePath, rTVal, cacheTime);

                return(rTVal);
            }
            catch (Exception ex)
            {
                ex.Handler(string.Format("序列化配置错误 {0},{1},缓存 {2},返回默认值:{3}", cfgFilePath, ex.ToString(), LocalCache <string, object> .LocalCacheServer == null, defVal.ToString()));
                return(defVal);
            }
        }
Esempio n. 2
0
        private static T GetLocalCfgValueByFileJson <T>(this string cfgFilePath, T defVal = default(T), TimeSpan expiredTimeOut = default(TimeSpan))
        {
            var val = LocalCache <string, object> .LocalCacheServer.Get(cfgFilePath, null);

            if ((val != null))
            {
                return((T)val);
            }
            var rVal = FileHelp.ReadToEnd(cfgFilePath, "");

            try
            {
                var rTVal     = ServiceStack.Text.JsonSerializer.DeserializeFromString <T>(rVal);
                var cacheTime = expiredTimeOut == default(TimeSpan) ? TimeSpan.FromHours(24) : expiredTimeOut;
                LocalCache <string, object> .LocalCacheServer.Add(cfgFilePath, rTVal, cacheTime);

                return(rTVal);
            }
            catch (Exception ex)
            {
                ex.Handler();
            }
            return(defVal);
        }
Esempio n. 3
0
 /// <summary>
 /// 序列化为JSOn,并写入文件(如果文件已存在,则截断为零)
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="val"></param>
 /// <param name="fileName"></param>
 public static void SerializeJSONToStream <T>(T val, string fileName)
 {
     FileHelp.WriteToJson <T>(val, fileName);
 }