Esempio n. 1
0
        public static SaveException Parse(EntityManager em, String json)
        {
            var jn           = JNode.DeserializeFrom(json);
            var message      = jn.Get <String>("ExceptionMessage");
            var entityErrors = jn.GetArray <EntityError>("EntityErrors");
            var saveErrors   = entityErrors.Select(ee => ee.Resolve(em));

            return(new SaveException(message ?? "see EntityErrors property", saveErrors));
        }
Esempio n. 2
0
        private static async Task <string> ReadResult(HttpResponseMessage response)
        {
            var result = await response.Content.ReadAsStringAsync();

            if (!response.IsSuccessStatusCode)
            {
                try {
                    var json = JNode.DeserializeFrom(result);
                    response.ReasonPhrase = json.Get <string>("Message");
                } catch (Exception) { }

                throw new DataServiceRequestException(response, result);
            }
            return(result);
        }
Esempio n. 3
0
        public async Task <SaveResult> SaveChanges(IEnumerable <IEntity> entitiesToSave, SaveOptions saveOptions)
        {
            var entityManager  = entitiesToSave.First().EntityAspect.EntityManager;
            var saveBundleNode = PrepareSaveBundle(entitiesToSave, saveOptions);

            try {
                var saveResultJson =
                    await saveOptions.DataService.PostAsync(saveOptions.ResourceName, saveBundleNode.Serialize());

                var jn = JNode.DeserializeFrom(saveResultJson);
                if (jn.HasValues("Errors") || jn.HasValues("errors"))
                {
                    throw new SaveException(entityManager, jn);
                }
                return(ProcessSaveResult(entityManager, saveOptions, jn));
            } catch (DataServiceRequestException dsre) {
                var jn = JNode.DeserializeFrom(dsre.ResponseContent);
                throw new SaveException(entityManager, jn);
            } catch (HttpRequestException e) {
                throw new SaveException(e.Message, e);
            }
        }
Esempio n. 4
0
 public SaveException(EntityManager em, String json) :
     this(em, JNode.DeserializeFrom(json))
 {
 }
        /// <summary>
        /// Imports metadata via a TextReader.
        /// </summary>
        /// <param name="textReader"></param>
        public void ImportMetadata(TextReader textReader)
        {
            var jNode = JNode.DeserializeFrom(textReader);

            ImportMetadata(jNode);
        }
        /// <summary>
        /// Imports metadata from a string.
        /// </summary>
        /// <param name="metadata"></param>
        public void ImportMetadata(String metadata)
        {
            var jNode = JNode.DeserializeFrom(metadata);

            ImportMetadata(jNode);
        }
Esempio n. 7
0
        /// <summary>
        /// Imports metadata via a TextReader.
        /// </summary>
        /// <param name="textReader"></param>
        /// <param name="isFromServer"></param>
        public void ImportMetadata(TextReader textReader, bool isFromServer = false)
        {
            var jNode = JNode.DeserializeFrom(textReader);

            ImportMetadata(jNode, isFromServer);
        }
Esempio n. 8
0
        /// <summary>
        /// Imports metadata from a string.
        /// </summary>
        /// <param name="metadata"></param>
        /// <param name="isFromServer"></param>
        public void ImportMetadata(String metadata, bool isFromServer = false)
        {
            var jNode = JNode.DeserializeFrom(metadata);

            ImportMetadata(jNode, isFromServer);
        }