如何使用 Entity Framework 查询具有动态列的 table?

How to use Entity Framework to query a table having dynamic columns?

我有一个名为 Tags 的 table,当用户创建标签时会在其中添加一个新列(列的名称将是用户提供的标签名称)。此外,当用户编辑标签名称时,该列会被重命名。

我知道我的应用程序存在设计缺陷。但只是想知道我们应该如何为这样的 table 创建模型?有什么方法可以使用 Entity Framework 在这样的 table 中执行 CRUD 操作?

除了它是一个非常奇怪的设计之外,解决方案非常简单 - 只需执行原始 SQL 查询,然后进行手动映射。示例查询:

    string studentName = ctx.Database
           .SqlQuery<string>("Select tag1 from Posts where postId=@id", new SqlParameter("@id", 1))
           .FirstOrDefault();

您可以使用原始查询处理的所有 CRUD 操作。