Domanda

I have an external content type for which I created a BDC model with a LobSystem of type dot.NET assembly. I have a SpecificFinder and a Finder method defined. I also have an external list created on this external content type.

Although listing the items works and displaying a specific item in the display form also works, the SpecificFinder is never called. It's always Finder method called, for list and for item also.

It's my understanding that SpecificFinder should be called for reading items. Why would Finder be called instead?

I have no errors whatsoever, although that's not strange for SharePoint :(, so my question is: When does the SpecificFinder get called and what should I be looking for when investigating the cause of why it is not called?

It's not a problem for now but the list of items can get quite large and would like to minimize the volume of data going between SP and the external system.

P.S. Unfortunately I won't be able to post the BDC content and entities; I'll appreciate any pointers you can give me.

È stato utile?

Soluzione 3

Managed to figure this out. It was nothing wrong with the BDC Model. The display form for read item was using a custom web part that had the list as datasource and so it read the list not the item, causing the Finder to be called each time.

Classic external list with OOB display form works how it should and calls SpecificFinder.

Altri suggerimenti

There was a similar post in another forum - BCS SpecificFinder not executed. The issue is related to the missing 'Root Finder' method.

have a look at your model definition file, ensure if your Finder method instanse contains a property named "UseClientCachingForSearch", if so, comment out the line.

<Property Name="UseClientCachingForSearch" 
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a sharepoint.stackexchange
scroll top