I'm trying to interact with a bunch of third-party web parts written using the V2 Connections API. The interface I'm implementing is IWebPartRow (V3), and as I understand it, SharePoint 2007 has built-in facilities for transforming the implementation into something that an implementation of IRowConsumer (V2, obsolete in 2007) can consume.

I've managed to implement the interface, but as soon as I connect the web parts, I get a lovely NRE, because instead of my web part, the ConnectionRuntime passes a null reference to the consuming Web Part.

The problem seems to originate in ConnectionRuntime.ConnectAllInterfaces() which is, sadly, resistant to reflector-decompiling.

I've tried to do my due diligence and search for clues on the web, but I'm running out of ideas.

Help me, SPOverflow, you're my only hope :-)


I think the V2 APIs where in the SharePoint namespace and the connections in the WSS V3 web parts are part of the ASP.NET Namespace. My guess it that is why they are not compatible. I know you can still create a web part using the SharePoint namespace with V3 (not recommended by MS unless you need to). It's possible the web part implementation for consumer is compatible. Just a guess though, not sure it would work.

  • Theoretically they should be compatible -- I can't remember the specifics, as it's been quite a while since this issue was fresh in my mind. But the reasoning behind my original post was based on finding adapter implementations between the interfaces in decompiled SharePoint code. :) – Rytmis Jun 1 '11 at 7:38

How did you get the v2 web parts to work in v3? With the .net framework difference I'm not sure how this is possible unless you have the source. I had developed a couple of applications for SPS 2003/WSS 2 that utilized the original web part connection methods that were deprecated. I wasn't able to find a way to easily upgrade or recompile them for MOSS/WSS 3, instead they had to be completely rewritten.

  • Deprecation doesn't really prevent recompilation, but that's not what I did -- like I said, the web parts were third-party, so compiling them with the V2 interfaces but targeting WSS 3 was not my doing. :P – Rytmis Jun 1 '11 at 7:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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