开发者

Possible to load entities by string name of entity?

I have the following sample code which gets a list of values from a table in the DB and binds them to a checkbox list.

var db = new DBContext();    
db.Entity1.ToList().ForEach(
x => CheckBoxList1.Items.Add(new ListItem(x.Value, x.ID));

I have about 10 checkboxlists like these and I dont want to repeat the code. I'm trying to extract a method out of it and use it for all checkboxes. Is it possible to load an entity by a开发者_运维知识库 string name? Something like -

db.Load("Entity1").ToList().ForEach...

So I can pass in the entity name and the checkbox list and do the foreach loop in the method and bind the items, like this -

void BindValues(string entityName, CheckBoxList checkBoxList)
{
    db.Load("Entity1").ToList().ForEach(
    x => checkBoxList.Items.Add(new ListItem(x.Value, x.ID)));
}

Thank you.


In Code First the DbContext exposes a .Set() or .Set(Type) method to get a handle on the table. So assuming straight EF exposes the same, and you are happy to access your lists by their entity type rather than a string, this would work for you.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜