请耐心等待我是新手:我目前正在使用.Net neo4jClient。目前我有一个共享节点和一个客户节点。我正在他们之间创建关系CustomerOwnsShare并将其持久化。
这是我的关系课
public class CustomerOwnsShare :
Relationship,
IRelationshipAllowingSourceNode<Customer>,
IRelationshipAllowingTargetNode<Share>
{
public CustomerOwnsShare(NodeReference targetNode)
: base(targetNode)
{
}
public int Quantity { get; set; }
public float CostPerShare { get; set; }
public string DateOfPurchase { get; set; }
public string ShareSymbol { get; set; }
public const string TypeKey = "CUSTOMER_OWNS_SHARE";
public override string RelationshipTypeKey
{
get { return TypeKey; }
}
}
现在从我正在使用 Linq 的数据库中检索关系列表,如下所示
IEnumerable<RelationshipInstance> relationshipInstances =
graphClient.RootNode.In<Customer>(CustomerBelongsTo.TypeKey, c => c.Email == email)
.OutE(CustomerOwnsShare.TypeKey)
但这会返回没有我需要的数据(数量、CostPerShare 等)的关系实例对象。
RelationshipInstance公开了一个RelationshipReference对象,但即使这样也不能帮助我检索我的实际关系对象。在深入挖掘时,我发现我可以执行 Raw gremlin 查询,如下所示
graphClient.ExecuteGetAllRelationshipsGremlin<>()
但它的函数签名也返回了一个 IEnumerable 的RelationshipInstance。
关于如何用它的数据检索我的实际持久关系对象的任何想法或建议?
提前致谢