Я хочу запустить приложение-консоль, которое вызывает веб-сайт на всех страницах выходного кэша, чтобы все кэшированные выгружаемые были кэшированы для пользователя. При использовании браузера страница кэшируется правильно, но я хочу иметь возможность запускать функцию, которая кэширует все страницы для пользователей.outputcache сайт с консоли app
Im использует new System.Net.WebClient().DownloadString("http://url");
, но страницы не будут кэшироваться при использовании этого вызова.
атрибут
кэширование[ChildActionOutputCache(("CacheAll"), Location = OutputCacheLocation.Server)]
Атрибут Функция
public class ChildActionOutputCacheAttribute : OutputCacheAttribute
{
public ChildActionOutputCacheAttribute(string cacheProfile)
{
var settings = (OutputCacheSettingsSection)WebConfigurationManager.GetSection("system.web/caching/outputCacheSettings");
var profile = settings.OutputCacheProfiles[cacheProfile];
Duration = profile.Duration;
VaryByParam = profile.VaryByParam;
VaryByCustom = profile.VaryByCustom;
}
}
web.config свойства для атрибута
<caching>
<outputCacheSettings>
<outputCacheProfiles>
<add name="CacheAll"
duration="43200"
location="Server"
varyByParam="*"/>
</outputCacheProfiles>
</outputCacheSettings>
</caching>
Какое кеширование вы используете? – SLaks
Маркировка метода контроллера с атрибутом outputcache с атрибутом costum. – user473104