Hey, if you’re trying to send class instances, you may use NetworkBehaviour.OnDeserialize() and NetworkBehaviour.OnSerialize() messages to perform custom serialization.
Read more in docs: http://docs.unity3d.com/Manual/UNetStateSync.html
Similar to what Dmitriy suggests, I usually have custom serialize & deserialize methods for classes I want to send over the network. Remote actions (like Command and ClientRPC) can take your serialized class byte arrays as parameters.