我想使用实体框架.但是,我还要求允许我的用户在我们的系统中定义自定义字段.我仍然想使用实体框架,而不是使用带有哈希表属性的部分类.
下面是我想到的解决方案,但它并不简单,所以我想看看是否有更好的方法.
我的想法是,有一个ModelManager对象,它将在相应的表上创建一个列,修改EDM文件,并使用edmgen.exe编译文件.这将全部发生在与应用程序不同的进程和/或应用程序域中,因为应用程序将引用生成的程序集.当应用程序重新启动时,它将可以访问新添加的字段.
这是使用实体框架执行此操作的唯一方法吗?谢谢你的时间.
在阅读了实体框架团队和 Julie Lerman 的一些博客文章后,听起来他们正在考虑在下一个版本中让这变得更容易。这意味着据我所知,我在问题中所述的方式是将字段动态添加到实体框架的最佳方式。