Class 最佳实践:如何通过业务层和数据层插入多个表?

Class 最佳实践:如何通过业务层和数据层插入多个表?,class,insert,Class,Insert,我曾经是一名开发人员和兼职db设计师,但已经很多年了,我正在学习 我正在构建一个web应用程序,有一个Person(实际上是“Profile”)表,其中包含多个子表,这些子表与我的Person表有N:N关系,例如。 喜爱运动 音乐仪器 艺术技巧 在阅读了Scott Mitchell在www.asp.net上的优秀数据访问教程之后,我想设计我的应用程序,其中包含深思熟虑的数据访问(使用表适配器)和业务逻辑(使用类)层 我最感兴趣的是设计类和表适配器。这里的“工作单元”更像是一个真实的对象,它不直接

我曾经是一名开发人员和兼职db设计师,但已经很多年了,我正在学习

我正在构建一个web应用程序,有一个Person(实际上是“Profile”)表,其中包含多个子表,这些子表与我的Person表有N:N关系,例如。 喜爱运动 音乐仪器 艺术技巧

在阅读了Scott Mitchell在www.asp.net上的优秀数据访问教程之后,我想设计我的应用程序,其中包含深思熟虑的数据访问(使用表适配器)和业务逻辑(使用类)层

我最感兴趣的是设计类和表适配器。这里的“工作单元”更像是一个真实的对象,它不直接与我的基于表的类或数据访问对象对齐。因此,我想我看到的是需要构建一个类,该类不是围绕表格建模的,而是围绕现实生活中的对象(我的个人资料+收藏夹体育+音乐工具+艺术技能)

我真正想要的是一本好书或一个网站,介绍如何做到这一点。具体来说,我如何构建一个支持这些子记录(作为集合)的类。我想我理解这些概念——我只是需要一些关于如何将其付诸实践的指导

我所能要求的最好的答案是让我看一本书(最好是C#),这本书涉及到了所有这些复杂的问题——很肯定我已经远远超过了“初学者”的书

谢谢-


-Pete

如果您能够遵循ORM工具所呈现的内容,那就很清楚了

关键是少用表来考虑它,多用对象来考虑它

听起来你会有一个Person类,其中包含技能类或接口的子集合:

public class Person
{
   public IList<Skill> Skills { get; set; }
}
公共类人物
{
公共IList技能{get;set;}
}

这是一种多对多的关系,但你可能不需要一种技能来记录有多少人与之相关。

不幸的是,一本书可能没有帮助。我建议您阅读这些书,重新理解RDBMS和OO的两个世界。表和业务实体不能是1:1映射


希望这能有所帮助。

我带了一大堆亚马逊的二手书C#类设计手册:编写有效的类-编程Microsoft Visual C#2005:基类库(专业开发人员)-C#类设计手册-设计模式:可重用面向对象软件的元素希望在这四者之间,我会得到我想要的。谢谢你的建议-彼得:这些都是很好的书,但是我不认为它们给了你一个关于软件端到端工作的想法。祝你好运!