コード例 #1
0
ファイル: Mutation.cs プロジェクト: wangwe/Dgraph-dotnet
        private NQuad BuildNQuadFromProperty(Property property)
        {
            Debug.Assert(property != null);

            NQuad nquad = new NQuad();

            nquad.Subject     = GetNodeName(property.Source);
            nquad.Predicate   = property.Name;
            nquad.ObjectValue = property.Target.Value;

            return(nquad);
        }
コード例 #2
0
ファイル: Mutation.cs プロジェクト: wangwe/Dgraph-dotnet
        private NQuad BuildNQuadFromEdge(Edge edge)
        {
            Debug.Assert(edge != null);

            NQuad nquad = new NQuad();

            nquad.Subject   = GetNodeName(edge.Source);
            nquad.Predicate = edge.Name;
            nquad.ObjectId  = GetNodeName(edge.Target);

            return(nquad);
        }
コード例 #3
0
ファイル: Mutation.cs プロジェクト: wangwe/Dgraph-dotnet
        //
        // ------------------------------------------------------
        //              Privates
        // ------------------------------------------------------
        //

        #region Privates

        private void AddFromNQuad(NQuad nquad, List <Edge> edges, List <Property> properties)
        {
            if (nquad.ObjectId != null)
            {
                INode source = nquad.ObjectId.StartsWith("_:")
                    ? (INode) new BlankNode(nquad.ObjectId)
                    : (INode) new NamedNode(Convert.ToUInt64(nquad.ObjectId), "Unknown");
                INode target = nquad.ObjectId.StartsWith("_:")
                    ? (INode) new BlankNode(nquad.ObjectId)
                    : (INode) new NamedNode(Convert.ToUInt64(nquad.ObjectId), "Unknown");
                edges.Add(Clients.BuildEdge(source, nquad.Predicate, target).Value);
            }
            else
            {
                INode source = nquad.ObjectId.StartsWith("_:")
                    ? (INode) new BlankNode(nquad.ObjectId)
                    : (INode) new NamedNode(Convert.ToUInt64(nquad.ObjectId), "Unknown");
                properties.Add(Clients.BuildProperty(source, nquad.Predicate, GraphValue.BuildFromValue(nquad.ObjectValue)).Value);
            }
        }
コード例 #4
0
        public async Task test_insert_3_quads()
        {
            var op = new Operation
            {
                Schema = "name: string @index(fulltext) ."
            };

            await _client.AlterAsync(op);

            var txn = _client.NewTransaction();

            _uidsMap = new Dictionary <string, string>();

            foreach (var d in _data)
            {
                var quad = new NQuad
                {
                    Subject     = $"_:{d}",
                    Predicate   = "name",
                    ObjectValue = new Value {
                        StrVal = $"ok {d}"
                    }
                };

                var mut = new Mutation();
                mut.Set.Add(quad);

                var ag = await txn.MutateAsync(mut);

                _uidsMap.Add(d, ag.Uids[d]);
            }

            await txn.CommitAsync();

            Console.WriteLine("Commit Ok");
        }
コード例 #5
0
ファイル: Mutation.cs プロジェクト: wangwe/Dgraph-dotnet
        private void DealWithProperty(Property property, Action <NQuad> placeNQuad)
        {
            NQuad nquad = BuildNQuadFromProperty(property);

            placeNQuad(nquad);
        }
コード例 #6
0
ファイル: Mutation.cs プロジェクト: wangwe/Dgraph-dotnet
        private void DealWithEdge(Edge edge, Action <NQuad> placeNQuad)
        {
            NQuad nquad = BuildNQuadFromEdge(edge);

            placeNQuad(nquad);
        }