public IHttpActionResult Get() { if (User == null || User.Identity == null) { return(Unauthorized()); } long currentUserId = User.Identity.GetUserId <long>(); if (currentUserId <= 0) { return(Unauthorized()); } var systemUser = SystemUser.Get(currentUserId, this._context); if (systemUser == null) { return(NotFound()); } else { return(Ok(systemUser)); } }
protected override void Execute(CodeActivityContext executionContext) { // Extract the tracing service ITracingService tracingService = executionContext.GetExtension <ITracingService>(); try { //Create the context IWorkflowContext context = executionContext.GetExtension <IWorkflowContext>(); IOrganizationServiceFactory serviceFactory = executionContext.GetExtension <IOrganizationServiceFactory>(); IOrganizationService service = serviceFactory.CreateOrganizationService(context.UserId); DynamicUrlParser parser = new DynamicUrlParser(); EntityReference primaryEntity = parser.ConvertToEntityReference(service, RecordUrl.Get <string>(executionContext)); string relationshipName = RelationshipName.Get <string>(executionContext); Guid ownerId = Guid.Empty; string ownerType = string.Empty; EntityReference owner = SystemUser.Get <EntityReference>(executionContext); if (owner != null) { ownerId = owner.Id; ownerType = owner.LogicalName; } else { owner = Team.Get <EntityReference>(executionContext); if (owner != null) { ownerId = owner.Id; ownerType = owner.LogicalName; } } if (ownerId != Guid.Empty) { string childEntityName = null, childEntityAttribute = null; if (relationshipName.Contains(';')) { string[] relationshipNames = relationshipName.Split(';'); foreach (string rel in relationshipNames) { OneToManyRelationshipMetadata oneToNRelationship = RetrieveRelationshipInfo(service, primaryEntity, relationshipName); if (oneToNRelationship != null) { childEntityName = oneToNRelationship.ReferencingEntity; childEntityAttribute = oneToNRelationship.ReferencingAttribute; RetrieveAndUpdateRelatedRecords(service, primaryEntity, childEntityName, childEntityAttribute, ownerId, ownerType); } } } else { OneToManyRelationshipMetadata oneToNRelationship = RetrieveRelationshipInfo(service, primaryEntity, relationshipName); if (oneToNRelationship != null) { childEntityName = oneToNRelationship.ReferencingEntity; childEntityAttribute = oneToNRelationship.ReferencingAttribute; RetrieveAndUpdateRelatedRecords(service, primaryEntity, childEntityName, childEntityAttribute, ownerId, ownerType); } } } } catch (FaultException <OrganizationServiceFault> ex) { throw new Exception("XrmWorkflowTools.AssignChildRecords: " + ex.Message); } }