Question

I have been trying to use BLToolkit to activate an Oracle stored procedure which takes a User Defined Type as an argument as an output parameter and changes it.

I have managed to do this on a primitive type, and and also by manually calling SetSpCommamd however I would like to use the abstract class generation method but can't seem to get it to work.

I'm pretty sure the code I wrote is correct (works for the primitive). When debugging I found the SetSpCommamd called by the generated code gets wierd parameters instead of the ones I provided as opposed to when I call the method manually (the it gets the exact parameters I'd like). I wish I could see the code generated by the reflection emit to see what's wrong there.

Can anyone please help me figure out why this is not working?

Était-ce utile?

La solution

Found the problem (Potentially a bug in BLToolkit).

BLToolkit does not pass the UDT Class as is to the procedure (instead it tries to flatten it or something and pass the insides of the object). I Changed the object to a Struct instead of a Class and that fixed it.

Later on I also changed it back to class and made a patch in the 'IsScaler()' method in BLToolkits code.

I will report this as a Bug I hope they fix it.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top