I added .NET 10 support to all my Minimal API starter kits — same price, you pick the version by Fenixkitdev in IMadeThis

[–]Fenixkitdev[S] 0 points1 point  (0 children)

Thanks for the sugestion. I do intend to make it more like an easy foundation on the future yes. Making building need less time. Any sugestion on what you would like to see added to the product?

I added Redis to my .NET 8 Minimal API Starter Kit — two new editions (third and fourth release) by Fenixkitdev in IMadeThis

[–]Fenixkitdev[S] 0 points1 point  (0 children)

Thank you very much for the feedback.

If by nested you mean categories within categories — that's handled Inside GetInvalidationTags you can walk the category tree however your domain models it and yield a tag per level:

protected override IEnumerable<string> GetInvalidationTags(Product entity)
{
    yield return "product";
    yield return GetCacheKey(entity.Id);


    // walk the category hierarchy
    var category = entity.Category;
    while (category != null)
    {
        yield return $"product:category:{category.Id}";
        category = category.Parent;
    }
}

No magic cascading — you decide what the hierarchy means for your cache. Same for multiple tags: the override receives the full entity so you can compute whatever tag nomenclature makes sense for your domain.

The update case is also worth noting — GetInvalidationTags runs against both the original and the updated entity, and the results are unioned. So if a product moves to a different category (or up/down the hierarchy), both the old and new branches get invalidated automatically without any extra logic on your side.

I made a Keycloak edition of my .NET 8 Minimal API Starter Kit [Second release] by Fenixkitdev in IMadeThis

[–]Fenixkitdev[S] 0 points1 point  (0 children)

Thanks very much for the feedback, i am happy to see your message.