using Entities.Contracts; namespace TechHelper.Server.Repositories { public interface IExamRepository { /// /// 根据ID异步获取一个完整的试卷实体,包括所有子题组和题目。 /// /// 试卷ID /// 完整的 Assignment 实体,如果找不到则返回 null。 Task GetFullExamByIdAsync(Guid assignmentId); /// /// 获取指定用户创建的所有试卷的预览信息。 /// /// 用户ID /// Assignment 实体集合。 Task> GetExamPreviewsByUserAsync(Guid userId); /// /// 向数据库添加一个新的试卷。 /// /// 要添加的试卷实体。 Task AddAsync(Assignment assignment); Task AddAsync(AssignmentQuestion assignment); Task AddAsync(Question assignment); Task AddAsync(AssignmentClass assignment); } }