在C# .NET中如何编写对应OOD表划线内容的DTO
你当前的写法是错误的,核心问题如下:
- 属性命名
EnrolledStudents为复数形式,明显对应多个学生的集合,但你定义的属性类型是单个Student实体,类型和命名的语义不匹配。
修正方案
根据你实际的业务场景二选一即可:
- 如果OOD表中对应字段确实是关联多名已注册学生,使用集合类型即可,推荐初始化空集合避免后续空引用报错:
// 允许外部直接赋值集合的写法 public List<Student> EnrolledStudents { get; set; } = new List<Student>(); // 仅允许内部/构造函数赋值集合的写法 public List<Student> EnrolledStudents { get; private set; } = new List<Student>();
- 如果OOD表中对应字段仅关联单个已注册学生,先把属性命名改成单数消除歧义,原有逻辑可以保留:
public Student EnrolledStudent { get; private set; }
内容的提问来源于stack exchange,提问作者dhwng7
相关产品推荐
相关产品推荐

