2009-10-09 78 views
6

我正在研究像crm这样的概念证明,我需要你的一些建议。 我的应用程序的数据层完全动态并运行在EF 3.5上。当用户更新实体,更改关系或向数据库添加新列时,首先我正在计划为这些自定义类制作这些列。在应用程序运行时期间用新的更改重建我的数据库模型层之后。我的模型层与我的项目紧密结合,以便轻松地反映模型层的变化(它通过接口连接到我的项目并在运行时加载到应用程序域)。是否可以使用ADO.NET实体框架数据库模式更新?

我需要创建动态实体,创建实体关系并在运行期间修改它们之后,我需要创建更改数据库脚本以更新数据库模式。我知道ADO.NET团队说“我们将能够在EF 4.0中提供这个属性”,但我不需要等待它们。

如何在运行时通过EF 3.5更新数据库更改?

例如,我需要创建新实体或需要更改某些实体模式,添加新属性或更改属性类型之后才能将这些更改应用于物理数据库模式?

任何想法?

回答

1

此博客文章可能有你需要的。它描述了一种捕获模型的元数据并在运行时修改它的过程。我不知道它是如何工作的,但它听起来很酷。

运行 http://blogs.microsoft.co.il/blogs/idof/archive/2008/08/22/change-entity-framework-storage-db-schema-in-runtime.aspx

+0

罗伯特嗨期间更改实体框架存储数据库架构, 谢谢您的答复,但我已经使用了类似的做法在我的项目我也有使用EDM工具类库动态构建我模型层,之后我通过Interface执行了这个松散耦合的模型层。 其实我有解决方案来创建和更新从运行时数据库模型层,我需要从模型层更新数据库模式或像这样。 – fyasar 2009-10-10 09:51:37

+0

我从ADO.Net团队博客中找到了EDM Tools源代码:http://blogs.msdn.com/adonet/archive/2008/06/20/edm-tools-options-part-1-of-4.aspx – fyasar 2009-10-10 09:52:35

相关问题