I am putting my Tridion Base Templating project DLL in the Global Assembly Cache (not in Tridion Environment).

This has worked fine until now when I want to do the debugging on tridion. Earlier, using TcmUploadAssembly.exe we were able to easily upload our PDB files from our visual studio.

As my DLL is now in GAC, where do I need to put my PDB files to allow debugging?

Will putting the PDB in the GAC work for me or I need to put it somewhere in the Tridion folder and referenced it from there?


What about this location in Tridion.ContentManager.config

  <tridion.templating cmePreviewUrl="/WebUI/Editors/CME/Views/Popups/Preview/Preview.aspx">
    <debugging pdbDirectory="F:\Tridion\Temp\" force32Bit="false" />

Any suggestions!!

  • 1
    You can add a location from where .pdb files should be loaded in Visual Studio. Go to 'Debug' -> 'Options and Settings' -> 'Debugging' -> 'Symbols'. In here you can add a location in the 'Symbol file (.pdb) locations' box. Commented May 19, 2013 at 15:10
  • Check out this url for information about the <tridion.templating><debugging> node (Login required): sdllivecontent.sdl.com/LiveContent/content/en-US/… Commented May 23, 2013 at 5:48

2 Answers 2



I think you should have asked this question in any .NET forum as this is not related to the SDL Tridion but more to the .NET.

BTW below are my 2 cents regarding debuging a C# DLL in GAC:

  1. Place your PDB file along with your DLL in the GAC
  2. Alternatively, you can choose to configure your visual studio as below: Go to Tools -> Options. In the Debugging menu, uncheck Enable Just My Code (Managed only). Then, go to your web.config and set debug=true. And now, attach your Visual Studio to the w3wp process and debug.

More information can be found on following links:




I hope this help.

  • I know 1st option will work i.e. putting PDB in GAC, what about the second option....how to start debugging when my page is getting rendered in template builder or from Tridion. Commented May 20, 2013 at 4:26
  • 1
    What about this node given in Tridion.ContentManager.config <tridion.templating cmePreviewUrl="/WebUI/Editors/CME/Views/Popups/Preview/Preview.aspx"> <debugging pdbDirectory="F:\Tridion\Temp\" force32Bit="false" /> if we put our PDB tridion will default pick it from there? Commented May 20, 2013 at 5:17

You can debug your Tridion c# tbb' and any other helper code in GAC.

Usually we upload tbb assembly(DLL) into Tridion in two ways:

  1. Directly opening the component and uploading it but we can not

  2. Upload pdb TCMUploadAssembly.exe, here you have option to upload pdb.

if you still want to go with first option and also want to debug the c# tbb, you can manually copy the pdb at following location as per your config and attach the debugger.

but it will work only for C# tbb. if you want to debug code of other .net assembly. you can refer following tutorial.

In my case we have custom template building block for css. The DLL was in the GAC so we have to debug the code of C# and GAC assembly working from Template builder itself.

See also Configuring Visual Studio to Debug .NET Framework Source Code.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.