That is exactly why
Content management systems[
^] were introduced. You can create a system for your applications so that your clients are provided with features, in a GUI mode. They don't even have to change anything, they can apply templates, change the content, update or even delete the content. Allowing the users or clients to edit the HTML files, or ASP.NET HTML files (e.g. aspx, cshtml, vbhtml etc.), not only because they are compiled when you build the solution to generate dynamic HTML files for users' requests (see
Solution 3 by Sergey for more on this) but the main thing is that client might mess up with the interface, HTML elements, syntax and much more. For this, CMS provides you with a great way to create a system that maintains the template but still allows the client to fully use the application.
CMSs provide clients with features to edit the web pages (which are the aspx pages), they can use WYSIWYG editors such as CKEditor or others to write the content, add images or other multimedia. Then saving the content would save it as HTML content, which can be rendered all by the CMS itself. I would recommend that you read more about these systems, ASP.NET also can be used with CMS, you can search for some CMS,
Umbraco[
^] is one of them, even official ASP.NET website uses Umbraco.
For a working example, have a look at Wordpress (that is a CMS, more than a blogging website), or a simple example is the CodeProject article editor, you don't need to write the HTML for that, you can write it in plain-text!