我有一个 Intranet 应用程序,它需要我们校园内各个地点的联系信息,这些地点由我们的 IT 实验室支持组织提供服务。我们有一个包含联系信息的企业目录,所以我没有将实际的联系信息保存在数据库中,而是一个不可变的标识符,用作在我们的企业目录中查找该人的键(通过 Web 服务)。我将通过一个公开的网站查找联系信息。
问题在于对基于 Web 的目录查找有用的 id 只是“某种”不可变的,而不是我将存储在数据库中的 id。使用人员的 Active Directory 登录 ID 最容易执行目录查找。我将使用的称为主记录唯一 ID。
我的问题是:将链接从 MRUID 转换为 Active Directory 登录 ID 的最合理位置在哪里?
现在我正在表示层中进行翻译,使用应用程序级缓存来减少对目录的查找。目前只有一个网站,但我希望如果有其他网站需要这样做,我会将帮助程序类迁移到共享的 Web 控件库。
我考虑将代码放在数据或业务层中,但由于缓存而选择不这样做。您缓存的方式和内容似乎更多是应用程序的功能,而不是这些其他层。
我会对我可能没有考虑过的其他意见和想法感兴趣。