我想创建一个平台,该平台可以读取实体名称、它们的属性和关系的 XML 或 JSON 配置,并以此作为起点对这些实体执行基本的 CRUD 操作。
这意味着这些实体将没有 C# 类定义。
我想为此使用 SQL Server 数据库,但是我相信使用诸如 Graph 或 NoSql 数据库之类的东西会容易得多,因为没有预定义的结构来创建 ERD。
我还想使用 C#、 Entity Framework 和 JSON.NET 来处理这些动态实体并处理它们的业务逻辑。
另一种解释方式如下:
我希望有人能够通过 UI 执行以下操作:
创建一个名为 Book 的实体。
一本书具有以下属性:标题、描述、作者(与作者的一对一关系)
创建一个名为 Author 的实体。
作者具有以下属性:名字、姓氏
这样的平台叫什么,有人能指引我走向正确的方向吗?
最佳答案
What is a platform like this called and can someone lead me in the right direction?
这些应用程序称为数据库管理。一些例子是 SQL Management Studio 和 PHPMyAdmin。
I want to create a platform that can read an XML or JSON configuration of entity names, their properties, and relationships and do basic CRUD operations on these entities as a starting point.
你为什么要这样做?我们已经有许多经过数十年开发努力的应用程序。
快速搜索显示了如何创建一个教程 using ADO.NET .我没有仔细研究它,但您可以肯定,这样的应用程序并不像遵循教程那么简单。
I would also like to use C#, Entity Framework, and JSON.NET to work with these dynamic entities and process business logic on them.
记住: Entity Framework 是一个 ORM (Object-relational mapping tool) .它的工作是在现有数据库和应用程序之间高级 映射。您不想将应用程序代码映射到数据库,而是想管理该数据库。
因此,EF 是不适合这项工作的工具。我认为 ADO.NET 是您能做的最好的。您想创建一个低级数据库应用程序,因此您需要使用一个低级工具。
也就是说,您可能只想创建一些用户定义的内容类型?然后我们正在谈论CMS。您可能会在 Orchard Content Management System 中找到一些想法.
关于c# - 创建一个平台来处理未知实体的 CRUD 场景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53093952/