.net可扩展的数据层...想法请

时间:2010-09-29 21:31:53

标签: c# database database-design

这可能是一个不可能的问题 - 但如果有人有任何想法,即使这是一个定制的书面解决方案

我们正试图想出一个简单的程序,以数据库为后盾发送给人们。在简单的层面上,会有一个“用户”对象,它只有名称和电子邮件。该程序只允许某人编辑名称和电子邮件,一切都很好

然后我们希望其他开发人员能够添加自己的字段,并编写一个“插件”来编辑它。所以,我有一个程序的副本,我已经能够编写我的插件,在表单中添加“comany name” - 它可以独立于数据层,但这种方法的问题在于你最终运行两个数据库命令

从用户中选择姓名,电子邮件 从用户

中选择公司名称

理想情况下,如果插件向数据层添加内容,包括在用户上包含companyname,那么你只有一个命令

真的很酷

从用户

中选择姓名,电子邮件,公司名称

完美......但是如何

明信片上的想法 - 或至少作为答案在这里

2 个答案:

答案 0 :(得分:1)

如何将XML字段作为附加数据添加到users表中,那么“插件”程序员可以将任何数据添加到其中。

MS SQLServer(我认为是2005版本)允许您从主查询中查询xml,因此您还可以提供一个入口点,以便在需要时为where子句添加一些条件。

因此,如果您始终将信息输入XML字段,那么插件开发人员只需要将他想要的值读入并写入xml,并填充他创建的控件。

答案 1 :(得分:0)

我想我已经找到了尽可能接近的地方 - 流利的NHibernate似乎在这个领域提供了很多潜力