public DataPackage CreateFolderAndLinkedDoc() { // create a folder data object String folderName = "a-test-folder-" + System.DateTime.Now.Ticks; DataObject folderDataObj = new DataObject(new ObjectIdentity(DefaultRepository), "dm_folder"); PropertySet folderDataObjProperties = new PropertySet(); folderDataObjProperties.Set("object_name", folderName); folderDataObj.Properties = folderDataObjProperties; // create a contentless document DataObject String doc1Name = "a-test-doc-" + System.DateTime.Now.Ticks; DataObject docDataObj = new DataObject(new ObjectIdentity(DefaultRepository), "dm_document"); PropertySet properties = new PropertySet(); properties.Set("object_name", doc1Name); docDataObj.Properties = properties; // add the folder as a parent of the folder ObjectRelationship objRelationship = new ObjectRelationship(); objRelationship.Target = folderDataObj; objRelationship.Name = Relationship.RELATIONSHIP_FOLDER; objRelationship.TargetRole = Relationship.ROLE_PARENT; docDataObj.Relationships.Add(new ObjectRelationship(objRelationship)); // set up the relationship filter to return the doc and folder RelationshipProfile relationProfile = new RelationshipProfile(); relationProfile.ResultDataMode = ResultDataMode.REFERENCE; relationProfile.TargetRoleFilter = TargetRoleFilter.ANY; relationProfile.NameFilter = RelationshipNameFilter.ANY; relationProfile.DepthFilter = DepthFilter.SPECIFIED; relationProfile.Depth = 2; OperationOptions operationOptions = new OperationOptions(); operationOptions.RelationshipProfile = relationProfile; // create the folder and linked document DataPackage dataPackage = new DataPackage(); dataPackage.AddDataObject(docDataObj); return(objectService.Create(dataPackage, operationOptions)); }
public DataPackage CreateFolderAndLinkedDoc() { // create a folder data object String folderName = "a-test-folder-" + System.DateTime.Now.Ticks; DataObject folderDataObj = new DataObject(new ObjectIdentity(DefaultRepository), "dm_folder"); PropertySet folderDataObjProperties = new PropertySet(); folderDataObjProperties.Set("object_name", folderName); folderDataObj.Properties = folderDataObjProperties; // create a contentless document DataObject String doc1Name = "a-test-doc-" + System.DateTime.Now.Ticks; DataObject docDataObj = new DataObject(new ObjectIdentity(DefaultRepository), "dm_document"); PropertySet properties = new PropertySet(); properties.Set("object_name", doc1Name); docDataObj.Properties = properties; // add the folder as a parent of the folder ObjectRelationship objRelationship = new ObjectRelationship(); objRelationship.Target = folderDataObj; objRelationship.Name = Relationship.RELATIONSHIP_FOLDER; objRelationship.TargetRole = Relationship.ROLE_PARENT; docDataObj.Relationships.Add(new ObjectRelationship(objRelationship)); // set up the relationship filter to return the doc and folder RelationshipProfile relationProfile = new RelationshipProfile(); relationProfile.ResultDataMode = ResultDataMode.REFERENCE; relationProfile.TargetRoleFilter = TargetRoleFilter.ANY; relationProfile.NameFilter = RelationshipNameFilter.ANY; relationProfile.DepthFilter = DepthFilter.SPECIFIED; relationProfile.Depth = 2; OperationOptions operationOptions = new OperationOptions(); operationOptions.RelationshipProfile = relationProfile; // create the folder and linked document DataPackage dataPackage = new DataPackage(); dataPackage.AddDataObject(docDataObj); return objectService.Create(dataPackage, operationOptions); }