I am posting this as an idea, because after researching on posts, I didn't find a generic solution.
I have this issue of the web app breaking on refresh, when changing a column_name, or deleting it using a view. I am perfectly able to refresh on Desktop and get the updated column name, or a deleted column is dropped just fine. The table on power bi is created by the use of a "select * from ..." query. I am using a native query as I need to use parameters and work with incremental refresh. Also I need to point out that the column which changes might not be referenced anywhere.
The problem this creates personally, is that I have to open each time the dataset, refresh manually on Desktop and reupload. I have quite a few datasets to handle, and the columns change dynamically and fast, so I can't keep up.
1. Create a view/materialized view on a Postgres database.
2. Load the view/materialized view on Power BI Desktop using "select * from view".
3. Upload to a Workspace.
4. Rename any column of view/materialized_view.
5. By using a gateway, refresh the web app or wait for the scheduled refresh to fire.
*. Other details: native query, pro user, parameters used to make a connection and limit.