是否正确使用枚举

本文关键字:枚举 是否 | 更新日期: 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应该是抽象的,有两种具体的类型,称为TeacherStudent
然后,这些继承的类型可以各自具有不同的属性。

我觉得你的设计不错。

您也可以使用布尔变量,例如UserIsPatientUserIsTeacher,但通过使用枚举,您创建了一些可以在以后需求发生变化时轻松扩展的内容,例如,如果您想添加实习教师、实习生或其他什么。