ソーシャル ネットワーキング Web サイトで友達を管理するために使用したい Neo4jClient の Friend リレーションシップ クラスがあります。フレンド ステータス (要求、承認、拒否、ブロック) ごとに個別のリレーションシップを作成するのではなく、フレンド リレーションシップ クラスにプロパティを追加しました。ただし、Neo4jClient を使用してクラスをシリアル化すると、リレーションシップにStatusプロパティが作成されません。
ここに私の関係クラスがあります:
/// <summary>
/// Friendship relationship - User is a friend of a User with a Status of REQUESTED, ACCEPTED, DENIED, BLOCKED
/// </summary>
public class Friend : Relationship, IRelationshipAllowingSourceNode<User>,
IRelationshipAllowingTargetNode<User>
{
public static readonly string TypeKey = "FRIEND";
public string Status { get; set; }
public Friend(NodeReference targetNode)
: base(targetNode)
{ }
public override string RelationshipTypeKey
{
get { return TypeKey; }
}
}
関係を作成するための私のコードは次のとおりです。
client.CreateRelationship(user, Friend(requestedUser) { Status = "REQUESTED" });
後ですべての Friend 関係を照会し、Status プロパティに基づいてさまざまなセットを返すことができるようにしたいと考えています。また、Friend 関係の Status プロパティを更新できるようにしたいと考えています。Status プロパティを適切に追加するにはどうすればよいかアドバイスしてください。