NeVeSpl / NTypewriter

File/code generator using Scriban text templates populated with C# code metadata from Roslyn API.
https://nevespl.github.io/NTypewriter/
MIT License
126 stars 24 forks source link

"Start without debugging" doesn't trigger a render of the templates #53

Closed gregveres closed 2 years ago

gregveres commented 2 years ago

I really like the new feature of RenderWhenProjectBuildIsDone. I have noticed that it does kick off a template render when I click on the Build/Build Solution menu item.
It also kicks off the template render when I click on Build/Rebuild Solution.

very nice, especially since the template rendering is so much faster than Typewriter.

What I have noticed is that the template render is not kicked off when the build via Debug/Start without debugging, or Debug/Start. Both of these will do a build if necessary and then launch the application. It seems that for some reason these builds do not trigger NTypewriter.

Is there a way to capture these builds as well? I rarely build my project via the Build menu, I always build it via the Debug/Start without Debugging menu.

NeVeSpl commented 2 years ago

Are you sure that after Debug/Start, a project that contains *.nt templates was built? Have you checked Output/Build window and found confirmation of that?

Debug/Start only builds selected projects that have changed, if nothing changed in the given project, the build will not be started. And if build succeeded for given project, NTypewriter should always be triggered for that project. But it will not be triggered for other projects form solution if they were not build.

gregveres commented 2 years ago

I see. The project with the templates needs to be built, not the solution. I guess that makes sense.

For me, I have a project that is sort of standalone that contains my frontend and isn't built in VS, it is built in VSCode. This stub project in VS gets built when I build the solution, but the main back end app project doesn't depend on this stub. I will make some changes to get it dependent on the stub so that it gets built.