我正在开发一个开源,我需要从多个 xml 文件中读取值来填充字典,并且每当任何 xml 文件发生更改时,我都必须更新字典。由于有多个文件我想使用FileSystemWatcher
. 这是一个好主意吗?或者我必须使用具有文件依赖关系的 ASP.NET 缓存?我不确定 ASP.NET 缓存在多个文件的情况下如何帮助我。
注意:我在更新字典时实现了锁定机制,因此在更新字典的情况下线程不会成为问题。
我正在开发一个开源,我需要从多个 xml 文件中读取值来填充字典,并且每当任何 xml 文件发生更改时,我都必须更新字典。由于有多个文件我想使用FileSystemWatcher
. 这是一个好主意吗?或者我必须使用具有文件依赖关系的 ASP.NET 缓存?我不确定 ASP.NET 缓存在多个文件的情况下如何帮助我。
注意:我在更新字典时实现了锁定机制,因此在更新字典的情况下线程不会成为问题。
要为多个文件创建依赖项,您可以像这样使用AggregateCacheDependency:
CacheDependency[] depArray = new CacheDependency ()
{
new CacheDependency(Server.MapPath("foo.txt")),
new CacheDependency(Server.MapPath("bar.txt"))
};
AggregateCacheDependency aggDep = new AggregateCacheDependency();
aggDep.Add(depArray);
Cache.Insert("key", value, aggDep);