gpt4 book ai didi

c# - 如何在运行时使用 Entity Framework 动态添加/删除字段?

转载 作者:行者123 更新时间:2023-12-02 17:35:50 26 4
gpt4 key购买 nike

我的项目需要在运行时动态添加/删除字段。我已经创建了这个功能,但没有在 EF 中创建。我想使用 EF 创建此功能。有什么想法如何做到这一点吗?

最佳答案

如果您需要动态数据结构,您必须使用完全不同的架构,否则就不能使用 EF。 EF 不是用于动态更改数据库的工具 - 只需看看如何使用 EF 即可。您将静态表映射到静态类定义。如果在运行时更改表,如何更改类(EF 中不支持动态)?

作为替代数据库结构的示例,您可以使用具有多个不同类型的预定义列的数据库,并且新字段将映射到新类型。您的应用程序中将有额外的“映射”层,它将根据存储在其他地方的某些类型元数据来解释您的数据库内容。这是 Sharepoint(至少 2007 年)使用的方法,其中您单独存储内容类型(数据描述),但所有内容都在一个包含大量列的巨大表中。

另一个示例是结构,其中您有单独的核心数据表(在所有实体之间共享)、单独的属性描述表以及单独的与核心数据相关的属性值表。该数据库结构有一个名称,但我现在想不起来。

每种动态方法都有其代价。通常,您会丢失强类型工作的某些部分,并且会损失性能。

您的链接工具不适用于更改数据库结构。只是修改映射中的名称,但表结构必须保持不变。

关于c# - 如何在运行时使用 Entity Framework 动态添加/删除字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8710573/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com