예제 #1
0
        public RmReference Create(RmGeneric newResource)
        {
            if (newResource == null)
            {
                throw new ArgumentNullException("newResource");
            }

            Message msgRequest  = requestFactory.CreateCreateRequest(newResource);
            Message msgResponse = wsResourceFactoryClient.Create(msgRequest);

            if (msgResponse.IsFault)
            {
                ClientHelper.HandleFault(msgResponse);
            }

            ResponseCreate createResponse = responseFactory.CreateCreateResponse(msgResponse);

            try
            {
                RmReference reference = new RmReference(createResponse.ResourceCreated.EndpointReference.ReferenceProperties.ResourceReferenceProperty.Value);
                if (newResource.ContainsKey(new RmAttributeName(RmResource.AttributeNames.ObjectID.Name)))
                {
                    newResource[RmResource.AttributeNames.ObjectID.Name].Value = reference;
                }
                return(reference);
            }
            catch (NullReferenceException)
            {
                return(new RmReference());
            }
            catch (FormatException)
            {
                return(new RmReference());
            }
        }
예제 #2
0
 public ResponseCreate createResume(MyResume resume)
 {
     try
     {
         MongoClient dbClient   = new MongoClient(conenctionString);
         var         resp       = new ResponseCreate();
         var         database   = dbClient.GetDatabase("ResumeDB");
         var         collection = database.GetCollection <MyResume>("MyResume");
         collection.InsertOne(resume);
         resp.Success  = true;
         resp.idResume = resume._id.ToString();
         return(resp);
     }
     catch (Exception ex)
     {
         return(new ResponseCreate()
         {
             Success = false,
             ErrorDescription = ex.Message.ToString()
         });
     }
 }
예제 #3
0
        public ResponseCreate CreateCreateResponse(Message response)
        {
            ResponseCreate retVal = new ResponseCreate();

            // for a reason which is not clear, this isn't working
            //ResourceCreated resourceCreated = response.GetBody<ResourceCreated>(new ClientSerializer(typeof(ResourceCreated)));

            XmlNode body = response.GetBody <XmlNode>(new ClientSerializer(typeof(XmlNode)));

            retVal.ResourceCreated = new ResourceCreated();
            retVal.ResourceCreated.EndpointReference = new EndpointReference();
            try
            {
                retVal.ResourceCreated.EndpointReference.Address             = body["EndpointReference"]["Address"].InnerText;
                retVal.ResourceCreated.EndpointReference.ReferenceProperties = new ReferenceProperties();
                retVal.ResourceCreated.EndpointReference.ReferenceProperties.ResourceReferenceProperty       = new ResourceReferenceProperty();
                retVal.ResourceCreated.EndpointReference.ReferenceProperties.ResourceReferenceProperty.Value = body["EndpointReference"]["ReferenceProperties"]["ResourceReferenceProperty"].InnerText;
            }
            catch (NullReferenceException)
            {
            }

            return(retVal);
        }