ユーザーが多くの投稿を持っているUser
などの簡単な例を使用して、エンティティフレームワークとリポジトリパターンを使用して戦略パターンを展開しようとしています。Post
この回答hereから、次のドメインがあります。
public interface IUser {
public Guid UserId { get; set; }
public string UserName { get; set; }
public IEnumerable<Post> Posts { get; set; }
}
ユーザーを使用するロールをサポートするインターフェイスを追加します。
public interface IAddPostsToUser : IUser {
public void AddPost(Post post);
}
現在、私のリポジトリは次のようになっています。
public interface IUserRepository {
User Get<TRole>(Guid userId) where TRole : IUser;
}
戦略(行き詰まっているところ)。このコードはどうすればよいですか? これを実装する方法の例を教えてください。どこに配置すればよいですか?
public interface IFetchingStrategy<TRole> {
TRole Fetch(Guid id, IRepository<TRole> role)
}
私の基本的な問題は、この質問で尋ねられたことです。戦略パターンを使用して、投稿のないユーザーと投稿のあるユーザーを取得できるようにしたいと考えています。