是否正确使用枚举
本文关键字:枚举 是否 | 更新日期: 2023-09-27 18:25:17
我正在尝试设置一些数据库表,并为教师、学生、课程、学期主题创建一些模型类。这是针对MVC3 Web应用程序的。如果我有一个userprofile实体和模型类。如果我在userprofile模型类中创建了一个分类枚举,并且该枚举是Teacher或Student,它会起作用吗。Idk如果可以的话。我真的不知道我该怎么做。我需要学生注册的课程,而作为一名教师,我需要他/她正在教授的课程。任何建议都将不胜感激。
例如,在userprofile类中可能有这样的东西:
class UserProfile {
public Guid UserID { get; set; }
public string fname { get; set; }
public string lname { get; set; }
public Classification classification { get; set; }
}
public enum Classification {
Student, Teacher
}
您的情况是为派生类型量身定制的。
UserProfile
应该是抽象的,有两种具体的类型,称为Teacher
和Student
然后,这些继承的类型可以各自具有不同的属性。
我觉得你的设计不错。
您也可以使用布尔变量,例如UserIsPatient
或UserIsTeacher
,但通过使用枚举,您创建了一些可以在以后需求发生变化时轻松扩展的内容,例如,如果您想添加实习教师、实习生或其他什么。