Dynamic entity in EF1/change model in runtime/add

2020-04-16 01:36发布

问题:

I want to give users the possibility to dynamically add new columns at the runtime. I am using the Entity framework v1 ...

I did manage to read as xml and then change ssdl , csdl and msl files and construct new workspace and new object context... But the problem is when i dynamically add new columns in EF model the underlying object is not changed, of course.

How to get the data from model without having concrete entity ? Anonymous type or DBDataRecord would be just fine... Or even some new type created at runtime...

Any idea ?

回答1:

In v1, you would need to generate a new assembly. This would also require redistributing EdmGen. I don't know if that's legal.

In EF v4, you could probably combine C# dynamic types with code-only modeling and come up with a pretty slick solution to your problem.



回答2:

Changing the Entity Model CSDL/SSDL will not change the types, because they are used to generate the types at design time. I don't think there is any practical way to modify those types at runtime to reflect your changes to the model.