我有一个分层数据结构(它存储在xml文件中),我希望将数据层封装在某种接口中,以便从业务层访问数据。
似乎包含工作单元的存储库模式可能是封装数据模型的好方法,但我真的不知道该怎么做..:
我的数据分组如下
我已经尝试了几个,但似乎Repository / UoW patteen适用于映射平面表而不是层次结构。
例如,制作
interface IRepository<T>
{
void Add(T entity);
void Remove(T entity);
T GetByName(string name);
IEnumerable<T> GetAll();
}
然后是
interface IUnitOfWork
{
IRepository<Group> GroupsOfTestmethods { get; }
IRepository<groupitembase> TestSequence { get; } // groupitembase is base class for TestMethod and GroupReference
void Save();
}
现在,如果我想要一个TestMethod,我必须遍历TestSequence列表和GroupsOfTestmethods中的所有组,以确保找到它。但是,如果有一个公共函数来获取TestMethod项,无论它位于什么列表中,都会很高兴。
有关如何构建Repository / UoW实现或任何数据访问层到层次结构的任何建议吗?
问候安德斯