예제 #1
0
        public static ClientSchemaObjectBase ToClientSchemaObjectBaseObject(this SchemaObjectBase pcObject)
        {
            pcObject.NullCheck("pcObject");
            ClientSchemaObjectBase result;

            if (pcObject is SCRelationObject)
            {
                result = new ClientSchemaRelation();
            }
            else if (pcObject is SCMemberRelation)
            {
                result            = new ClientSchemaMember();
                result.SchemaType = pcObject.SchemaType;
                FillPropertiesFromPC(((ClientSchemaMember)result), (SCMemberRelation)pcObject);
            }
            else
            {
                result = CreateClientBaseObject(pcObject.SchemaType);
            }


            result.ID               = pcObject.ID;
            result.Status           = (ClientSchemaObjectStatus)pcObject.Status;
            result.VersionStartTime = pcObject.VersionStartTime;
            result.VersionEndTime   = pcObject.VersionEndTime;

            pcObject.Properties.CopyTo(result.Properties);

            if (pcObject.Creator != null && string.IsNullOrEmpty(pcObject.Creator.ID) == false)
            {
                result.Creator = new ClientOguUser(pcObject.Creator);
            }

            return(result);
        }
예제 #2
0
        public static ClientSchemaRelation ToClientSchemaObject(this SCRelationObject pcRelation)
        {
            ClientSchemaRelation result = new ClientSchemaRelation();

            FillCommon(pcRelation, result);

            result.ParentID         = pcRelation.ParentID;
            result.ChildID          = pcRelation.ID;
            result.ChildSchemaType  = pcRelation.ChildSchemaType;
            result.ParentSchemaType = pcRelation.ParentSchemaType;
            result.Default          = pcRelation.Default;
            result.FullPath         = pcRelation.FullPath;
            result.InnerSort        = pcRelation.InnerSort;
            result.GolbalSort       = pcRelation.GlobalSort;

            return(result);
        }