public sealed class DependencyInjector
15 {
16 /**//// <summary>
17 /// 取得数据访问层对象
18 /// 首先检查缓存中是否存在,如果不存在,则利用反射机制返回对象
19 /// </summary>
20 /// <param name="className">数据访问类名称</param>
21 /// <returns>数据访问层对象</returns>
22 public static object GetDALObject(string className)
23 {
24 /**//// <summary>
25 /// 取得数据访问层名称,首先检查缓存,不存在则到配置文件中读取
26 /// 缓存依赖项为Web.Config文件
27 /// </summary>
28 object dal = CacheAccess.GetFromCache("DAL");
29 if (dal == null)
30 {
31 CacheDependency fileDependency = new CacheDependency(HttpContext.Current.Server.MapPath("Web.Config"));
32 dal = ConfigurationManager.AppSettings["DAL"];
33 CacheAccess.SaveToCache("DAL", dal, fileDependency);
34 }
35
36 /**//// <summary>
37 /// 取得数据访问层对象
38 /// </summary>
39 string dalName = (string)dal;
40 string fullClassName = dalName + "." + className;
41 object dalObject = CacheAccess.GetFromCache(className);
42 if (dalObject == null)
43 {
44 CacheDependency fileDependency = new CacheDependency(HttpContext.Current.Server.MapPath("Web.Config"));
45 dalObject = Assembly.Load(dalName).CreateInstance(fullClassName);
46 CacheAccess.SaveToCache(className, dalObject, fileDependency);
47 }
48
49 return dalObject;
50 }
51
15 {
16 /**//// <summary>
17 /// 取得数据访问层对象
18 /// 首先检查缓存中是否存在,如果不存在,则利用反射机制返回对象
19 /// </summary>
20 /// <param name="className">数据访问类名称</param>
21 /// <returns>数据访问层对象</returns>
22 public static object GetDALObject(string className)
23 {
24 /**//// <summary>
25 /// 取得数据访问层名称,首先检查缓存,不存在则到配置文件中读取
26 /// 缓存依赖项为Web.Config文件
27 /// </summary>
28 object dal = CacheAccess.GetFromCache("DAL");
29 if (dal == null)
30 {
31 CacheDependency fileDependency = new CacheDependency(HttpContext.Current.Server.MapPath("Web.Config"));
32 dal = ConfigurationManager.AppSettings["DAL"];
33 CacheAccess.SaveToCache("DAL", dal, fileDependency);
34 }
35
36 /**//// <summary>
37 /// 取得数据访问层对象
38 /// </summary>
39 string dalName = (string)dal;
40 string fullClassName = dalName + "." + className;
41 object dalObject = CacheAccess.GetFromCache(className);
42 if (dalObject == null)
43 {
44 CacheDependency fileDependency = new CacheDependency(HttpContext.Current.Server.MapPath("Web.Config"));
45 dalObject = Assembly.Load(dalName).CreateInstance(fullClassName);
46 CacheAccess.SaveToCache(className, dalObject, fileDependency);
47 }
48
49 return dalObject;
50 }
51
浙公网安备 33010602011771号