データベースがあり、EF 経由でアクセスしています。
public partial class Project
{
public int ProjectID { get; set; }
public string Name { get; set; }
public virtual ICollection<ProjectAssets> ProjectAssets { get; set; }
}
public partial class ProjectAssets
{
public int MappingID { get; set; }
public int ProjectID { get; set; }
public int AssetID { get; set; }
public virtual Project Project { get; set; }
public virtual Asset Asset { get; set; }
}
public partial class Asset
{
public int AssetID { get; set; }
public string Name { get; set; }
public short Type { get; set; }
public virtual ICollection<ProjectAssets> ProjectAssets { get; set; }
}
したがって、私のプログラムでは、その時点でアクティブなプログラムは 1 つだけProject
です。バインドしProject
てツリーとして表示したり、他のすべての方法で表示したり、他のプロジェクトに属するものを新しく作成したり、既存のものを追加したりAsset
したいと考えています。生成されたエンティティを使用する場合、それをすべて管理することはできないため、いくつかのルールが必要です。私はすでに良いimplを見つけました。リポジトリの数ですが、ルールの作成方法はまだわかりません。次のようなものを作成する必要がありますか:Asset
Asset
public class WorkProject : Project
{
public WorkProject(Project projject){...}
WorkAsset CreateAsset(){...}
void AddAsset(Asset asset){...}
}