I work at a company where we have a monolithic application and I want to split it out into smaller web services / windows services / websites e.t.c
I want to be 'smart' and re-use libraires contained in the monolith by putting them into their own class libraries and creating a NUGET package for them on build, using Azure Devops (although not entirely bound to this tool).
The main one I am attempting to isolate is the Data-Access Layer, as it is the most commonly used.
So far, the CI side will build one of my class libraries, and publish an incremented version number to a nuget feed I can connect to through VS.
The problem is, I cannot for the life of me figure out how to debug these nuget packages as if we were still debugging in the monolith - and we are all very used to being able to debug through the entire end-to-end of request -> response.
I think I essentially want to
- Host a nuget package
- Have it able to be built in DEBUG or RELEASE variants, (release on publish, debug during development)
- Step into the library easily, with full source and variable watch abilities, as if we were still in the monolith design
I refuse to believe this isn't possible as I assume most companies who craft good code will surely do this, or am I thinking about it all wrong?
The only thing I've managed to find online is someone who actively copies nuget packages locally to his machine, builds them in debug and drags pdb files across - which would be more hassle than its worth and make me want to just 'stick to the monolith design'.