我正在使用实体框架开发一个应用程序。我有一个组合框,其中包含数据库中表的名称。我有以下代码:
string table = cbTables.SelectedItem.ToString();
using (var dbContext = new Entities()) {
if (table.Equals("Person")) {
List<Person> list = (from l in dbContext.People select l).ToList();
} else if (table.Equals("Student")) {
List<Student> list = (from u in dbContext.Student select u).ToList();
} else if (table.Equals("Grade")) {
List<Grade> list = (from p in dbContext.Grade select p).ToList();
}
我怎样才能避免所有这些 if-else 检查?是否可以从包含名称的字符串中获取类的名称?
例子:
string = "Person";
var str = //something
List<str> list = (from u in dbContext.str select u).ToList();