
1 <?xml version="1.0" encoding="utf-8"?>
2 <!--
3 有关如何配置 ASP.NET 应用程序的详细信息,请访问
4 http://go.microsoft.com/fwlink/?LinkId=169433
5 -->
6 <configuration>
7 <appSettings>
8 <add key="key1" value="value1"/>
9 </appSettings>
10 </configuration>
web.config示例
一、缓存类
1 using System;
2 using System.Collections;
3 using System.Configuration;
4 using System.Web;
5 using System.Web.Caching;
6
7 namespace Common
8 {
9 /// <summary>
10 /// 缓存帮助类
11 /// author:陈彦斌
12 /// 时间:2019年7月14日14:25:30
13 /// HttpRuntime.Cache
14 /// </summary>
15 public sealed class CacheHelper
16 {
17 /// <summary>
18 /// 获取configuratio节点下appSettings中add的值
19 /// </summary>
20 /// <param name="key">AppSettings的键</param>
21 /// <returns></returns>
22 public static object GetAppSttings(string key)
23 {
24 return ConfigurationManager.AppSettings[key];
25 }
26 /// <summary>
27 /// 获取当前应用程序指定CacheKey的值
28 /// </summary>
29 /// <param name="CacheKey">appSettings节点下add中的键</param>
30 /// <returns></returns>
31 public static object GetCache(string CacheKey)
32 {
33 Cache objCache = HttpRuntime.Cache;
34 return objCache[CacheKey];
35 }
36 /// <summary>
37 /// 设置数据缓存(慎用)
38 /// </summary>
39 /// <param name="CacheKey">键</param>
40 /// <param name="CacheValue">值</param>
41 public static void SetCache(string CacheKey,object CacheValue)
42 {
43 Cache objCache = HttpRuntime.Cache;
44 objCache.Insert(CacheKey, CacheValue);
45 }
46 /// <summary>
47 /// 设置数据缓存
48 /// </summary>
49 /// <param name="CacheKey">键</param>
50 /// <param name="CacheValue">值</param>
51 /// <param name="TimeOut">时间间隔</param>
52 public static void SetCache(string CacheKey, object CacheValue, TimeSpan TimeOut)
53 {
54 Cache objCache = HttpRuntime.Cache;
55 objCache.Insert(CacheKey, CacheValue, null, DateTime.MaxValue, TimeOut, CacheItemPriority.NotRemovable, null);
56 }
57 /// <summary>
58 /// 设置数据缓存
59 /// </summary>
60 /// <param name="CacheKey">键</param>
61 /// <param name="CacheValue">值</param>
62 /// <param name="absoluteExpiration">绝对过期时间</param>
63 /// <param name="slidingExpiration">时间间隔</param>
64 public static void SetCache(string CacheKey, object CacheValue, DateTime absoluteExpiration, TimeSpan slidingExpiration)
65 {
66 Cache objCache = HttpRuntime.Cache;
67 objCache.Insert(CacheKey, CacheValue, null, absoluteExpiration, slidingExpiration);
68 }
69 /// <summary>
70 /// 移除全部缓存
71 /// </summary>
72 public static void RemovaAllCache()
73 {
74 Cache objCache = HttpRuntime.Cache;
75 IDictionaryEnumerator CacheEnum = objCache.GetEnumerator();
76 while (CacheEnum.MoveNext())
77 {
78 objCache.Remove(CacheEnum.Key.ToString());
79 }
80 }
81 /// <summary>
82 /// 移除指定键的缓存
83 /// </summary>
84 /// <param name="CacheKey">键</param>
85 public static void RemovaAllCache(string CacheKey)
86 {
87 Cache objCache = HttpRuntime.Cache;
88 objCache.Remove(CacheKey);
89 }
90 }
91 }
二、AppSetting配置类
1 using System;
2
3 namespace Common
4 {
5 /// <summary>
6 /// web.config操作类
7 /// 使用前需引用程序集:System.configuration
8 /// </summary>
9 public sealed class ConfigHelper
10 {
11 /// <summary>
12 /// 获取AppSettings中配置String信息
13 /// </summary>
14 /// <param name="key">键</param>
15 /// <returns></returns>
16 public static string GetConfigString(string key)
17 {
18 object objValue = CacheHelper.GetCache(key);
19 if (objValue == null) //缓冲区没有值
20 {
21 objValue = CacheHelper.GetAppSttings(key);
22 if (objValue != null)
23 {
24 CacheHelper.SetCache(key, objValue, DateTime.Now.AddMinutes(180), TimeSpan.Zero);
25 }
26 }
27 return objValue.ToString();
28 }
29 /// <summary>
30 /// 获取AppSettings中配置Bool信息
31 /// </summary>
32 /// <param name="key">键</param>
33 /// <returns></returns>
34 public static bool GetConfigBool(string key)
35 {
36 object objValue= CacheHelper.GetAppSttings(key);
37 if (StringUtil.isNullOrBlank(objValue))
38 {
39 try
40 {
41 bool.Parse(objValue.ToString());
42 return true;
43 }
44 catch
45 {
46 return false;
47 }
48 }
49 return false;
50 }
51 /// <summary>
52 /// 获取AppSettings中配置decimal信息
53 /// </summary>
54 /// <param name="key"></param>
55 /// <returns></returns>
56 public static decimal GetConfigDecimal(string key)
57 {
58 object objValue = CacheHelper.GetAppSttings(key);
59 if (StringUtil.isNullOrBlank(objValue))
60 {
61 try
62 {
63 return decimal.Parse(objValue.ToString());
64 }
65 catch
66 {
67 return 0;
68 }
69 }
70 return 0;
71 }
72 /// <summary>
73 /// 获取AppSettings中配置DateTime信息,可空
74 /// </summary>
75 /// <param name="key">键</param>
76 /// <returns></returns>
77 public static DateTime? GetConfigDateTime(string key)
78 {
79 DateTime? DateTimeNull = null;
80 object objValue = CacheHelper.GetAppSttings(key);
81 if (StringUtil.isNullOrBlank(objValue))
82 {
83 try
84 {
85 return DateTime.Parse(objValue.ToString());
86 }
87 catch
88 {
89 return DateTimeNull;
90 }
91 }
92 return DateTimeNull;
93 }
94 }
95 }