Max,
As you know, in the BLL InsertArticle(), you have the ability to do something like the following:
BizObject.PurgeCacheItems("articles_article");
this will delete everything from cache that has a *wildcard* key that begins "articles_article". Basically, what you really need to do is stick closely to the framework model and have methods in the BLL/DAL that you use to perform the *amendments* mentioned via the stored procedure. otherwise, you'll really end up having a spaghetti type of code where tracking down bugs will be 'hidden' from you due to some things happening in code and others 'invisibly' inside stored procedures called directly from UI etc, etc..
Just my 'purist' thoughts on the matter :D
[edit] of course you could just create a 'super-slim' method in the BLL that could be called from your 'code-behind'. I do this all the time to pick up attributes (perform comparisons) etc, so there would be no problem in doing the same thing to effect purely a clearence of the cache. i.e. in the \BLL\Articles\Article.cs class, you could add the following method:
public static void ClearArticleCache()
{
BizObject.PurgeCacheItems("articles");
}
this would be called inside your page.aspx (where required - i.e. just after running your stored proc) as:
Article.ClearArticleCache();
It'd work fine, and if it were 'well' commented would prolly be OK
jimi
http://www.originaltalent.com