多实体组合问题

wslfriend 2012-07-05 11:32:21
先决条件: 有ORM对单个实体持久化基类。

打比方先: 我们研发部门,依据经验总结,创建了 合同实体A, 合同物资实体B,这两个对象。 两者是父子关系。
按我以前做法,就是在 A 中,放置个 List 泛型容器, 把B 塞入进来,统一的做保存,就了事了。

但,现在领导发话了:
1: 我们研发中心提供的 A 和 B,都是毛坯。 很可能属性不够用。 换言之,A 和 B 都可能会被业务部门继承,甚至,业务部门还会独立创建C。

2: A 里面,放置 List 容器,就敲定了A 和 B 的关系,而这个关系是不牢靠的。应交由业务部门自己敲定去。

3: 也许,合同中,不仅需要A ,以及他儿子B ,甚至还需要新儿子C 和 同事D .
亦即 不同地方,合同所容纳的信息是千变万化的。 在A 实体中,绝对不能有任何其他实体的痕迹(外键也许可以网开一面)。

问题摆面上了,目前我的想法,就是再开辟个容器的概念。
比如: 一号客户,需要A ,B ,C 则
class PactForm:BaseForm
{
public A {get;set;}
public IList<B>;
public IList <C>;
}

二号客户,需要A,B,C,D,则
class PactForm:BaseForm
{
public A {get;set;}
public IList<B>;
public IList <C>;
public D {get;set;}
}

云云。。。。。。。。。。。。。。。。。。。。。。。。。。。。
PactForm 由图形化界面生成

则,每次增删改,直接对 Save( PactForm).
Save 时,反射遍历其内容,再逐个保存。

不知道这个解决方案,是否可行?

或者还有什么更好的方案么?
...全文
123 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
lotustao 2012-07-12
  • 打赏
  • 举报
回复
采用集合加弱类型设计

13,190

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 分析与设计
社区管理员
  • 分析与设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧