Memcached будет вашей инфраструктурой. Таким образом, согласно вашему проекту, сервисный уровень должен определять абстрагирование кэширования, и реализация этой абстракции (с использованием Memcached) может быть (например) в проекте Widget.Infrastructure
.
Также может быть хорошая причина для кэширования на уровне хранилища. Но это зависит от ваших потребностей. Затем вы должны определить абстракцию кеширования вне уровня обслуживания.
Конфигурация службы будет такой же, как и у других служб (в Startup.ConfigureServices
), и вы внедряете инфраструктуру кэширования через конструктор, где вам это нужно.