Can you give us some code for your webservice that you've created? I've done this with multiple complex objects through flex3 and webservices with .net. Should be pretty straight forward.
My object base class is Abstract and class I am using in Flex 3 is class inheriting abstract class. But when calling webservice Flex creating soap message of base class and I am getting error in .Net web services that "Can not create instance of Abstract class".
Below is the soap message difference calling same WCF method from .Net and Flex. For example Constraint is the base class and JobConstraint is the class which inherit Constraint class. But flex send message forming only Constraint while .Net soap is specifying i:type="JobConstraint".
Part of soap message Calling from .Net
Part of Soap message calling from Flex 3