So I've been battling an issue where the dataportal invokes the wrong Child_Insert() method on occasion. For example, if I have 2 overloads (Child_Insert(TypeA parent) and Child_Insert(TypeB parent)) the overload with TypeB will be invoked when in actuality, TypeA is what invoked the FieldManager.UpdateChildren() method.
This has only really happened on my box while developing, so it was easy to put off.
Today in production, the issue is happening again. The code base was copied directly from our QA server, where the issue is NOT happening. I just don't get it.
Further details include:
dev box is win 7 - 32 bit - running IIS 7.5
QA box is win 08 - 32 bit - running IIS 7
Prod box is win 08 - 64 bit - running IIS 7.5
I know, I know, the QA and Prod environments should be the same, but I don't have control of this unfortunately.
I'm starting to think it's an IIS 7.5 issue though seeing as though the issue occurs on my box on occasion and the Prod box and it has never seemed to crop up on the QA box.
Ok, I figured it out. Hopefully this is helpful to someone else. Somehow I managed to forget to pass in a parameter to FieldManager.UpdateChildren(). I guess I lucked out in that the appropriate ChildInsert() methods were called depending on which class FieldManager.UpdateChildren() was invoked from.
That was a nasty little bug and hopefully you don't run into it...
Copyright (c) Marimer LLC