asp.net core bin folder on publish to group all binaries
See original GitHub issueIs there an existing issue for this?
- I have searched the existing issues
Is your feature request related to a problem? Please describe the problem.
When publishing an ASP.net Core app we get a folder with lots of folders and dll files (+ folders for each culture), appsettings.json, web.config
Describe the solution you’d like
it would be much better to have a bin folder for all the dll files and rest non wwwroot folders
Additional context
Might not be a big issue for users of automatic/azure deployments, but for users of shared hosting and unperfect file managers, where we have to pick and delete files before unzipping the deployment zip it makes things harder.
On each deployment I have to delete all files, except:
.well-known
, my custom App_Data
folder(s), wwwroot sometimes, appsettings.json
sometimes.
And when using mvcBuilder.AddRazorRuntimeCompilation()
there’s also the Views folder.
So basically I need to do a whole lot of checkbox ticking and if all the dlls/runtimes folders and files would be in a bin
folder it would make things a lot easier.
Issue Analytics
- State:
- Created 5 months ago
- Comments:7 (4 by maintainers)
There would need to be a large demand for us to investigate adding this feature. We can leave this issue open and see how big of a pain point it is in general for customers. I assume you are using a traditional windows shared hoster? If not, can you share more details on your deployment process?
In general, we try as hard as possible to keep ASP.NET Core applications looking as similar to normal console applications as possible to avoid any differences in runtime behavior that have undesirable follow on effects (like loading assemblies from a different location or changing the loading semantics).
I can’t see us bringing back the bin folder to make uploading to shared hosters easier (ftp?). If your shared hosted supports web deploy; then it’s possible to automate the delete and push (it can diff what’s local and what’s remote).
It might be possible to configure the settings in a way that makes this work, but it’s a little tricky if you are using IIS