我正在使用Entity Framework开发一个应用程序.我有一个组合框,其中包含数据库中表的名称.我有以下代码:
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();
}
Run Code Online (Sandbox Code Playgroud)
我怎么能避免所有这些if-else检查?是否可以从包含该名称的字符串中获取类的名称?
例:
string = "Person";
var str = //something
List<str> list = (from u in dbContext.str select u).ToList();
Run Code Online (Sandbox Code Playgroud)