Does everyone on team need T4 Toolbox

Aug 12, 2009 at 6:39 PM

I have one hopefully simple question? If I use T4 Toolbox does everyone on the team need this addin? I'm thinking the only ones who need the addin are those who kickoff a transformation which relies on the templates, am I write in that assumption? Secondly supposing that all I wanted is the multi-file generation features and the shared template stuff (shared across projects), do I even need to use T4 Toolbox or are these easily (obviously easily is a relative term) done without T4 toolbox (the articles on your blog which explain these concepts start off saying we should have T4 Toolbox installed)?

I only ask these questions because I find that I am much more accepting to addins than other developers on my team. Anyway, great tool. I love it. Thanks!

Aug 12, 2009 at 6:50 PM
Edited Aug 12, 2009 at 7:02 PM

AB_dreeve --

FWIW, this is the way that I have answered these questions for myself.

>>>If I use T4 Toolbox does everyone on the team need this addin?

Yes, because everyone with VisualStudio who opens the project can always click the "Transform All Templates" button. That will break if T4ToolBox is not there. Can I ask people not to click it? Yes. Will they listen? I do not know. What is my "real" solution? Tell them to install it. Don't care about it. If it breaks, then they will see it, so they will have to do it. Either way, it will be installed if necessary. I win. (Grin.)

>>>I'm thinking the only ones who need the addin are those who kickoff a transformation which relies on the templates, am I write in that assumption?

See my reply above.

>>>supposing that all I wanted is the multi-file generation features and the shared template stuff ...do I even need to use T4 Toolbox?

Yes, because doing that other stuff is HARD without it. IMHO.

>>>I only ask these questions because I find that I am much more accepting to addins than other developers on my team.

Same here. However, that should not stop progress. Thankfully (or not) we are a very loosely knit team here and generally we all get our "own" projects. But, if they "come on to my project" it is "my toolset" they need or they do not work. Management cares about productivity and it is easy to argue that codegen is productive. Etc.

Another way to do it, I think, is to put it all in a shared library DLL. Just let them get-latest of the compiled DLL with all the good codegen output in it. That way, they will not need T4ToolBox.

HTH.

Thank you.

-- Mark Kamoski

Coordinator
Aug 12, 2009 at 7:37 PM

I agree with Mark. It is not easy to do multiple file generation, project and source control integration from plain T4. If you are willing to overlook some issues with Subversion (and possibly other source control providers), a simple implementation can be done in plain .tt files, without an installer. Once you need to go beyond the trivial scenarios and need to generate files in other folders and possibly projects, you have to have an assembly in GAC and modify registry, which is why T4Toolbox has the installer.

Aug 26, 2009 at 12:31 PM

Hi all!

Thanks for a great tool Oleg and thanks for clearifying this issue!

Unfortunately I'm in a situation where requiring that others also install T4 toolkit is virtually impossible due to a slow organization . In other words, anything that our projects depends on must sit together with the projects in the source repository. Being such a great tool, IMHO it's a pity that it can't currently be done with T4 Toolbox.

Initially my idea was that it should be possible to add the T4Toolbox source files and the assembly to the project and then refer to it with assembly directive but my guess is that it's impossible given that there are some registry settings that are required. (just ventilating my thoughts...)

Thanks,

Daniel Hegner