Но они, похоже, предназначены только для самодельных команд SQLC, или я ошибаюсь?
Я бы сказал, что они только полезны для "самосозданных" команд, потому что это единственные, о которых вы можете знать заранее. Если вы хотите создать уведомление для определенного запроса LINQ, тогда вам нужно просто вызвать метод в коде вместе с запросом.
Могу ли я вручную указать серверу SQL отправлять уведомления SQLDependency при изменении определенных таблиц?
Конечно. Сделать уведомление о:
SELECT * FROM TABLENAME;
И если да, как я могу прикрепить их к выходному кэшу?
Создайте команду, создайте зависимость кеша и ссылайтесь на нее при добавлении в кеш. Инициализируйте уведомления о зависимостях в global.asax.cs как обычно.
Можете ли вы сделать это с сильно типизированными представлениями?
Не имеет смысла. В MVC вы не должны делать доступ к данным в представлении.