I know some are reusing partial views for all kinds of blocks, by simply not using the BlockListItem
, BlockGridItem
etc base class, but instead passes the content part in, and adding settings in a view data dictionary.
Like so
@await Html.PartialAsync("blocks/" + block.Content.ContentType.Alias, block.Content, new ViewDataDictionary(ViewData){ { "settings", block.Settings }})
The individual block views then use
@inherits UmbracoViewPage<ContentModels.MyBlock>
@{
var settings = ViewData["settings"] as IPublishedElement;
}