コード例 #1
0
        public void Parses_with_embedded_representations()
        {
            // Arrange
            var jsonString =
                @"{                    
                    entities: [
                        {
                            class: [ ""info"", ""customer"" ],
                            rel: [ ""http://x.io/rels/customer"" ], 
                            properties: { 
                                customerId: ""pj123"",
                                name: ""Peter Joseph""
                            },
                            links: [
                                { rel: [ ""self"" ], href: ""http://api.x.io/customers/pj123"" }
                            ]
                        }
                    ]
                }";

            // Act
            var doc = SirenJson.Parse(jsonString);

            // Assert
            Assert.NotNull(doc);
            IEmbeddedRepresentation entity = doc.EmbeddedRepresentations.Single();

            Assert.Equal("http://x.io/rels/customer", entity.Rel.Single());
            Assert.Equal(2, entity.Classes.Count);
            Assert.Equal(1, entity.Links.Count);
        }
コード例 #2
0
            private static JObject UnparseEmbeddedRepresentation(IEmbeddedRepresentation Entity)
            {
                var entity = new JObject();

                UnparseClasses(entity, Entity.Classes);
                UnparseRels(entity, Entity.Rel);
                UnparseTitle(entity, Entity.Title);
                UnparseProperties(entity, Entity.Properties);
                UnparseActions(entity, Entity.Actions);
                UnparseLinks(entity, Entity.Links);
                UnparseEntities(entity, Entity.EmbeddedLinks, Entity.EmbeddedRepresentations);

                return(entity);
            }
            private static JObject UnparseEmbeddedRepresentation(IEmbeddedRepresentation Entity)
            {
                var entity = new JObject();

                UnparseClasses(entity, Entity.Classes);
                UnparseRels(entity, Entity.Rel);
                UnparseTitle(entity, Entity.Title);
                UnparseProperties(entity, Entity.Properties);
                UnparseActions(entity, Entity.Actions);
                UnparseLinks(entity, Entity.Links);
                UnparseEntities(entity, Entity.EmbeddedLinks, Entity.EmbeddedRepresentations);

                return entity;
            }