【发布时间】:2008-12-02 07:24:56
【问题描述】:
我们有一个 PageRoles xml 文件,其中包含页面路径和可以访问该页面的用户角色。
我们在一个静态类中维护一个 Dictionary,该类会加载该类的 int 静态构造函数。 该类有一个 CheckIfRoleAllowed 方法,它接受页面路径并返回一个布尔值。
每个页面在页面初始化时调用 CheckIfRoleAllowed。
static class PageAccessChecker
{
static Dictionary<string, UserRoleType[]> _PageAccessPermissions;
static FileSystemWatcher _XmlWatcher;
static PageAccessChecker()
{
// Load page access permissions from xml
// Set FileSystemWatcher watcher to watch for changes
}
public static CheckIfRoleAllowed(string pagePath)
{
}
}
使用单例模式会更好吗? 如果是,为什么?
亲切的问候。
【问题讨论】:
-
任何一个都将依赖类紧密耦合到这个类。问问自己,“我将如何对依赖于 PageAccessChecker 且独立于 PageAccessChecker 的类或方法进行单元测试?” @James Curran 是正确的。