设计用于填充数据库的C#程序

时间:2012-12-05 16:17:27

标签: c# database oop database-design

我对OOP和软件设计都很陌生,我的任务是创建一个程序来从一组数据源填充数据库。我的问题是高层次的,设计课程的好/灵活/逻辑方式是什么?我要构建的目标数据库大约有40个已经定义的表。此外,这些表分为10组(我们称之为TableSet)相关信息。我最初的想法是有3个课程:DataBaseTableSetTable

  • DataBase类将包含TableSet的数组(1到N)

  • TableSet类将具有该TableSet

  • 中的表数组
  • Table类只保存数据

对于我想要的方法

DataBase.PopulateTableSet(tableSetNum)
TableSet.PopulateTable(tableNum)
Table.RunQuery or some other method to get the right data

如果有人对什么是好的方法有任何建议,我真的很感激任何帮助。谢谢你看看。

3 个答案:

答案 0 :(得分:1)

您可以选择ORM(对象关系映射)。 ORM可以将DB表(关系)映射到代码中的类。你不需要手工做很多工作。 如果您使用的是C#,则可以使用Entity Framework或Nhibernate。对于Java,您可以使用Hibernate。

您可以使用这些链接进行进一步研究:

http://en.wikipedia.org/wiki/Object-relational_mapping

http://nhforge.org

http://msdn.microsoft.com/en-us/data/ef.aspx

http://www.hibernate.org/

答案 1 :(得分:0)

您可能想要了解的是三层应用程序开发范例。基本上,您需要设计一个可以读写数据源的类,例如:一个SQL数据源,访问...等...

接下来你需要一个逻辑层(有时也称为业务逻辑)。在你的逻辑类中,你会做一些事情,比如构建sql语句,运行计算等......最后是一个GUI层(赢取表单或者你想要使用的任何东西)。

您可能希望每个图层中有多个类,例如SQL类,MSAccess类或您正在阅读和编写的任何数据源。

您可能希望查看DataTables,请查看http://www.dotnetperls.com/

答案 2 :(得分:0)

我不是OO的新手;但是,我是C#的新手,我正在开发的应用程序现在与数据库紧密配合。对于该应用程序,我选择使用实体框架,它使得使用数据库几乎是透明的。

我发现数据库优先方法非常简单。您所要做的就是创建数据库,然后添加实体模型,让Visual Studio从数据库中创建它。然后,您将获得一个用于为您执行数据库工作的类列表。

如果您自己启动数据库,那么可以帮助您遵循一些命令,例如使用“复数”名称命名表并且不使用下划线(例如:如果您是'用户'表,称之为'用户')。

您可以观看几个视频来帮助您入门。这是video series,我发现这给了我一个良好的开端。我也发现了其他人;但是,我必须再次找到它们。