Minify and inline CSS for ASP.NET MVC

Updated on Wednesday, April 28, 2021

ASP.NET has a CssMinify class (and a JavaScript variant as well) designed for use in the bundling pipeline. But what if you want to have your CSS minified and inline? Here is an action that is working for me (rendered into a style tag on my _Layout.cshtml using @Html.Action("InlineCss", "Home")).

Note that I'm using this to inline CSS for this blog. The pages are cached so I'm not worried about how well this action performs. My blog is also basically all landing pages so I'm also not worried about caching a non-inline version for later use, I just drop all the CSS on every page.

(Related: Monitor page index status with Google Sheets, Apps Script and the Google Search Console API; Automate Google PageSpeed Insights and Core Web Vitals Logging with Apps Script; Reading and Writing Office 365 Excel from a Console app using the Microsoft.Graph C# Client API)

(You might also like: How to get technical support without spending hours on the phone; Sawmill Flats; The curious case of the missing slugs (in 2.8))

(All Code Posts)