1

我想使用 SQL Server 2008 开发一个通用的 CRM 应用程序。

应用程序必须使用一些扩展技术启用自定义用户字段。

我阅读了很多关于不同选项的信息,例如:

  • 可观察模式,以及
  • 实体属性值 (EAV)

但不幸的是,这些选项很难实现,我知道应用程序性能会受到影响,而且使用 Entity Framework Code First 来查询存储库也很困难。

我将不胜感激其他一些简单的选项来实现。

4

1 回答 1

2

大多数时候,像这样的包扩展系统用于将用户定义的列添加到现有表中。

您可以允许用户定义他们自己的表,这些表放置在他们自己的(隔离的)模式中。管理此扩展过程的管理 UI 将需要运行构建这些用户定义表所需的 DDL 代码。如果它们被定义为预定义表的扩展,您的系统应在其扩展的预定义表和用户定义表之间强制执行 1:1 关系。如果需要,您还可以允许独立的用户定义表。

创建用户定义表后,使用(预定义)映射表将用户定义表/列连接到 CRM UI 中的预定义字段。如果您还允许用户定义 UI 表单和字段,那么您的映射表也可以/而不是与这些相关联。

于 2012-04-07T16:44:47.657 回答