gpt4 book ai didi

web-services - Sitecore 以编程方式清除缓存

转载 作者:行者123 更新时间:2023-12-04 04:43:37 26 4
gpt4 key购买 nike

我正在尝试在 Sitecore 中以编程方式发布。发布工作正常。但是以编程方式这样做并不会清除 sitecore 缓存。以编程方式清除缓存的最佳方法是什么?

我正在尝试使用暂存模块附带的网络服务。但我收到错误请求异常(异常:远程服务器返回意外响应:(400) 错误请求。)。我试图增加客户端配置文件上的服务 receivetimeout 和 sendtimeout,但这并没有解决问题。任何指针将不胜感激?

我正在使用以下代码:

CacheClearService.StagingWebServiceSoapClient client = new CacheClearService.StagingWebServiceSoapClient();
CacheClearService.StagingCredentials credentials = new CacheClearService.StagingCredentials();

credentials.Username = "sitecore\adminuser";
credentials.Password = "***********";
credentials.isEncrypted = false;

bool s = client.ClearCache(true, dt, credentials);

我正在使用以下代码进行发布。

 Database master = Sitecore.Configuration.Factory.GetDatabase("master");
Database web = Sitecore.Configuration.Factory.GetDatabase("web");

string userName = "default\adminuser";

Sitecore.Security.Accounts.User user = Sitecore.Security.Accounts.User.FromName(userName, true);

user.RuntimeSettings.IsAdministrator = true;

using (new Sitecore.Security.Accounts.UserSwitcher(user))
{

Sitecore.Publishing.PublishOptions options = new Sitecore.Publishing.PublishOptions(master, web,
Sitecore.Publishing.PublishMode.Full, Sitecore.Data.Managers.LanguageManager.DefaultLanguage, DateTime.Now);

options.RootItem = master.Items["/sitecore/content/"];
options.Deep = true;
options.CompareRevisions = true;
options.RepublishAll = true;
options.FromDate = DateTime.Now.AddMonths(-1);

Sitecore.Publishing.Publisher publisher = new Sitecore.Publishing.Publisher(options);
publisher.Publish();
}

最佳答案

在 Sitecore 6 中,CacheManager 类有一个静态方法可以清除所有缓存。 ClearAll() 方法已过时。

Sitecore.Caching.CacheManager.ClearAllCaches();

关于web-services - Sitecore 以编程方式清除缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3713031/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com