Включение определяет существование функций.
Использование облегчает их использование.
cout
как определено в iostream, фактически называется "std :: cout".
Вы можете избежать использования пространства имен, написав.
std::cout << "Hello World";
Отключение кеширования (EnableCaching = false) и последующее принудительное выполнение нового выбора (SqlDataSourceInstance.Select (new DataSourceSelectArguments ())) перед повторным включением кеширования очищает конкретную комбинацию выбранных CommandText и CommandParameters, так что это начало.
Тем не менее, он по-прежнему сохраняет кэш других комбинаций запросов, выполняемых SqlDataSource, так что это не решает всей проблемы.
Убедитесь, что ваш CacheExpirationPolicy равен Absolute. Используйте ненулевое значение CacheDuration (0 означает бесконечную продолжительность кеширования).
Я только начал исследовать это сегодня и наткнулся на этот пост, этот вид выглядит как лучшее решение:
Простой способ программно аннулировать кеш SqlDataSource
<asp:SqlDataSource ID="x" EnableCaching="True" CacheKeyDependency="MyCacheDependency"/>
protected void Page_Load(object sender, EventArgs e)
{ // Or somewhere else before the DataBind() takes place
if (!IsPostBack)
{
//prime initial cache key value if never initialized
if (Cache["MyCacheDependency"] == null)
{
Cache["MyCacheDependency"] = DateTime.Now;
}
}
}
// Evict cache items with an update in dependent cache:
Cache["MyCacheDependency"] = DateTime.Now;