public string GetMemberGrandParent(MemoryStream data)
        {
            // arguments
            string server         = Serialization.DeserializeValue(data, typeof(string)) as string;
            string database       = Serialization.DeserializeValue(data, typeof(string)) as string;
            string cube           = Serialization.DeserializeValue(data, typeof(string)) as string;
            string hierUniqueName = Serialization.DeserializeValue(data, typeof(string)) as string;
            string memUniqueName  = Serialization.DeserializeValue(data, typeof(string)) as string;

            // execute
            XmlCellsetWrapper cst = new XmlCellsetWrapper();

            return(cst.GetMemberGrandParent(server, database, cube, hierUniqueName, memUniqueName));
        }
        public string GetMemberGrandParent(MemoryStream data)
        {
            // arguments
            string server=Serialization.DeserializeValue(data, typeof(string)) as string;
            string database=Serialization.DeserializeValue(data, typeof(string)) as string;
            string cube=Serialization.DeserializeValue(data, typeof(string)) as string;
            string hierUniqueName=Serialization.DeserializeValue(data, typeof(string)) as string;
            string memUniqueName=Serialization.DeserializeValue(data, typeof(string)) as string;

            // execute
            XmlCellsetWrapper cst=new XmlCellsetWrapper();
            return cst.GetMemberGrandParent(server, database, cube, hierUniqueName, memUniqueName);
        }