快捷搜索:  as  test  1111  test aNd 8=8  test++aNd+8=8  as++aNd+8=8  as aNd 8=8

瑞博国际平台注册:Enterprise Library 2.0 Hands On Lab 翻译(10):缓存应用程序



第一步

打开EmployeeBrowser.sln 项目,默认的安装路径应该为C:Program FilesMicrosoft Enterprise Library January 2006labscsCachingexercisesex02begin,并编译。

第二步 实现离线缓存

1.在办理规划治理器中选择EmployeeServices.cs文件,选择View | Code菜单敕令并添加如下命名空间。

using Microsoft.Practices.EnterpriseLibrary.Caching.Expirations;

2.定位到GetContactDetails措施,并添瑞博国际平台注册加如下代码。

public static EmployeesDataSet GetContactDetails()

{

EmployeesDataSet dsEmployees = null;

// TODO: Add persistent caching with time-out

// Attempt to retrieve from cache

CacheManager cache = CacheFactory.GetCacheManager();

dsEmployees = (EmployeesDataSet)cache[CACHE_KEY];

// Retrieve from dataPr瑞博国际平台注册ovider if not in Cache and Online

if (dsEmployees == null && ConnectionManager.IsOnline)

{

EmployeeDataProvider dataProvider = new EmployeeDataProvider();

dsEmployees = dataProvider.GetEmployees();

// Expire in 2 days

AbsoluteTime expiry = new AbsoluteTime(new TimeSpan(2, 0, 0, 0));

cache.Add(CACHE_KEY, dsEmployees,

CacheItemPriority.High, nul瑞博国际平台注册l,

new ICacheItemExpiration[] { expiry });

}

return dsEmployees;

}

3.改动措施GetEmployeePhoto为如下代码,即离线时不考试测验去获守信息。

public static Bitmap GetEmployeePhoto(Guid employeeId)

{

byte[] photoData = null;

// Attempt to retrieve from 瑞博国际平台注册cache

CacheManager cache = CacheFactory.GetCacheManager();

photoData = (byte[])cache[employeeId.ToString()];

// TODO: Retrieve from dataProvider if not in Cache and Online

if (photoData == null && ConnectionManager.IsOnline)

{

EmployeeDataProvider dataProvider = new EmployeeDataProvider();

photoData = dataProvider.GetEmployeePhotoData(employeeId);

cache.Add(employeeId.ToString(), photoData);

}

// No data found.

if (photoData == null)

return null;

// Convert bytes to Bitmap

using (MemoryStream ms = new MemoryStream(photoData))

{

return new Bitmap(ms);

}

}

第三步 设置设置设备摆设摆设持久缓存

1.在办理规划治理器中选择项目EnoughPI的设置设置设备摆设摆设文件App.config文件,选择View | Open With…菜单敕令,选择Enterprise Library Configuration并单击OK按钮。

2.选择Caching Application Block | Cache Managers | Cache Manager节点,选择Action | New | Isolated Storage菜单敕令。

3.设置属性PartitionName为EmployeeBrowser。

PartitionName允许多个缓存共享相同的物理存储位置。

4.保存利用法度榜样设置设置设备摆设摆设。

第四步 运行利用法度榜样

1.选择Debug | Start Without Debugging菜单敕令运行利用法度榜样。浏览少量的雇员信息employees加载到缓存中,不要浏览所有的雇员信息。

2.在办理规划治理器中选择ConnectionManage瑞博国际平台注册r.cs,选择View | Code菜单敕令,鄙人面的代码中改动IsOnline属性的值。

static public bool IsOnline

{

get { return false; }

}

3.选择Debug | Start Without Debugging菜单敕令运行利用法度榜样。现在利用法度榜样处于离线状态并没有连接数据库。

4.关闭利用法度榜样和Visual Studio.NET。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

您可能还会对下面的文章感兴趣: