コード例 #1
0
        private GremlinQuery CreateAddEdgeExpression(string label, GremlinContext g)
        {
            var expression = g.V(FromId).As("t").V(ToId).AddE(label).To("t");

            //if (AddReverse) return expression.V().V(ToId).As("y").V(FromId).AddE(ReverseLabel??label).To("y");
            return(expression);
        }
コード例 #2
0
        public static GremlinQuery SiblingQuery(GremlinContext g)
        {
            var q = g.V().Has("name", "Sanne").As("s")      //find start
                    .In("parent").Out("parent")             //navigate to siblings
                    .Where(p => p.Without("s")).Dedup();

            return(q);
        }
コード例 #3
0
        private GremlinQuery SiblingQuery(GremlinContext g)
        {
            var q = g.V().Has("name", "Sanne").As("s") //find start
                    .In("parent").Out("parent")        //navigate to siblings
                    .Where(p => p.Without("s")).Dedup();

            _output.WriteLine(q.CompileQuery());
            return(q);
        }
コード例 #4
0
        public static async Task <IEnumerable <T> > GetTypedAsync <T>(this IEdgeGraphSet <T> graphSet,
                                                                      Func <GremlinQuery <T>, GremlinQuery <T> > query) where T : IEdgeEntity
        {
            var g = graphSet as EdgeGraphSet <T>;

            //var context= new GremlinContext<T>(g._context);
            //var baseQuery = context.G();
            //var q = query.Invoke(baseQuery);
            return(await graphSet.GetAsync(gremlinContext =>
            {
                var context = new GremlinContext <T>(g._context);
                var baseQuery = context.G();
                var q = query.Invoke(baseQuery);
                return q;
            }));
        }
コード例 #5
0
ファイル: Edge.cs プロジェクト: sraddhan/Stardust.Paradox
 private GremlinQuery CreateAddEdgeExpression(string label, GremlinContext g, IDictionary <string, object> properties)
 {
     try
     {
         var expression = g.V(FromId).As("t").V(ToId).As("s").AddE(label).Property("id", $"{Guid.NewGuid().ToString()}").From("s").To("t");
         foreach (var property in properties)
         {
             expression = expression.Property(property.Key, property.Value);
         }
         return(expression);
     }
     catch (System.Exception ex)
     {
         throw;
     }
 }