Beispiel #1
0
        internal static async Task<Stream> AsStream<TEntity>(this TEntity entity) where TEntity : IResource
        {
            var result = new MemoryStream();
            var serializer = new JsonLdWriter();
            using (var writer = new StreamWriter(result, Encoding.UTF8, 4096, true))
            {
                var graphs =
                    from statement in await entity.Context.EntitySource.Load(entity.Iri)
                    group statement by statement.Graph into graphStatements
                    select new Graph(graphStatements.Key, graphStatements);
                await serializer.Write(writer, graphs);
            }

            result.Seek(0, SeekOrigin.Begin);
            return result;
        }