3

I have a small core service app which is experiencing a FileNotFoundException for Tridion.ContentManager.Data.dll at runtime. I can't locate this .dll in the usual spots (e.g [Tridion]\bin\client), nor is it contained inside of Tridion.ContentManager.dll. I'm using exclusively Tridion 2013 .dlls, targeting X64 and .NET 4.0.

I'm frankly a bit stumped because this seems like a simple problem, and an unusual one since I've used core service apps before and not had this come up. I must be missing something obvious, but I'm not sure where to turn for debugging purposes.

Any suggestions would be welcome. Thanks!

1
  • Please include stack trace also see if there is any additional info in the client event log and/or server. Also please mention if you are using the provided CoreServiceClient.
    – Likhan
    Commented Sep 2, 2013 at 13:53

1 Answer 1

6

That DLL is not public, you can find it in the GAC %WINDIR%\Microsoft.NET\assembly\GAC_MSIL\Tridion.ContentManager.Data\v4.0_7.0.0.2303__ddfc895746e5ee6b. Please review your app references/code since it shouldn't reference/use that DLL directly

7
  • This was indeed where I found it (not present on my dev machine, which is why the error was being thrown) but I am curious as to why my code was searching for it in the first place. I definitely didn't directly reference it, as it compiled fine. What does the .dll do? How does it interact with the core service client? Commented Sep 2, 2013 at 14:09
  • It is part of the CMS DA Layer, in the server side the core services call it but it is hidden from the client side. Probably you are not using it but you are referencing it somewhere. Is your application referencing other dll than the core services one?
    – Eric Huiza
    Commented Sep 2, 2013 at 14:13
  • Tridion.Common, Tridion.ContentManager, and Tridion.ContentManager.Common are explicitly referenced. Commented Sep 2, 2013 at 14:15
  • That is indeed the reason behind the error, try to don't use those DLLs in the client side, is there any specific functionality why you are using those DLLs?, perhaps the TCMUri class isn't it?
    – Eric Huiza
    Commented Sep 2, 2013 at 14:18
  • 1
    I think you are mixing coding concepts here, if you are using CoreServices you should retrieve a Publication using the CoreService.Read(Id, ReadOptions) method which will return a PublicationData object, you don't need to create a Publication object.
    – Eric Huiza
    Commented Sep 2, 2013 at 14:25

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.