私はこれに不慣れです:私は現在.Netneo4jClientを使用しています。現在、共有ノードと顧客ノードがあります。私はそれらの間に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)
しかし、これは私が必要とするデータ(Quantity、CostPerShareなど)を持たないRelationshipInstanceオブジェクトを返します。
RelationshipInstanceはRelationshipReferenceオブジェクトを公開しますが、それでも実際のリレーションシップオブジェクトを取得するのに役立ちません。もう少し深く掘り下げると、以下のようにRawgremlinクエリを実行できることがわかります。
graphClient.ExecuteGetAllRelationshipsGremlin<>()
しかし、その関数シグネチャは、 RelationshipInstanceのIEnumerableも返します。
データを使用して実際の永続化されたRelationshipオブジェクトを取得する方法に関するアイデアや提案はありますか?
前もって感謝します