我正在使用TaxonomyManager gettree(path)方法在我的c#代码中获取特定的树层次结构,但是获取结果需要3分钟以上,因此网站需要很长时间才能加载。如何减少加载网站的时间,还有其他方法可以用来从Ektron获取层次结构。
答案 0 :(得分:0)
我们遇到了同样的问题,实际上还有Ektron的支持来帮助解决它。
现在,每当我们使用分类法时,我们都会在服务器端缓存它们以避免性能损失。像
这样的东西string cacheKey = "Something unique for your situation";
TaxonomyData taxonomyData;
if (Ektron.Cms.Context.HttpContext.Cache[cacheKey] == null)
{
// Pull taxonomy data and store in cache.
Ektron.Cms.Context.HttpContext.Cache.Insert(cacheKey, taxonomyData);
}
else
{
taxonomyData = (TaxonomyData)Ektron.Cms.Context.HttpContext.Cache[cacheKey];
}
由于你已经知道如何拉出TaxonomyData,我就把它留了下来。我们不存储分类数据,而是将我们创建的对象与分类数据一起存储,因此只需缓存您需要的内容,然后就可以避免性能损失最大的问题。当时。
我不记得ektron缓存时间的设置位置,无论是在web.config中还是在WorkArea中。 Ektron支持称使用Ektron缓存,不确定使用常规缓存会产生多大差异。