به نظرم از قابلیت Notification Service در SQL Server بشه استفاده کرد.

چون در ASP.NET در مبحث Caching ما چیزی تحت عنوان Database Depnedency می تونیم تعریف کنیم.

بر اساس این قابلیت می تونید صفحه ای برای نمایش مثلاً لیست محصولات تعریف کنید و قابلیت Cache رو براش فعال کنید تا هر بار اجرا نشه و بیخود بار روی دیتابیس نذاره. بلکه یه بار که اجرا شد خروجی اش Cache بشه. اما به محض تغییر در رکوردی از جدول یا درج رکورد جدیدی در اون یا حذف یک رکورد، نسخه کش شده به طور خودکار غیر معتبر شده و از حافظه Cache پاک بشه، بدون این که لازم باشه دخالتی از سمت برنامه نویس در کُد صفحه صورت بگیره، یا چیری رو چک کنه و ....

این کار به طور کاملاً خودکار انجام می شه و برای این کار از قابلیت Notification Service در SQL Server استفاده می شه.

خود ASP.NET به یه طریقی این کار رو کرده دیگه، شما هم پی این مطلب رو بگیرید قطعاً به جواب می رسید.