在哪里解析数据

时间:2013-01-31 23:10:01

标签: c# sql

在以下情形中:

  • 用C#编写的基于表单的Windows应用程序
  • GUI仅包含与接口相关的代码,但实例化了功能逻辑的类
  • 存储和加载SQL数据的SQL类
  • 以与数据库兼容的格式存储数据的数据类

我想通过sql类加载数据并将其存储在数据类中。最好的方法是什么?

  1. 函数类实例化一个SQL类,调用查询函数并使用构造函数将包含的值传递给新的数据类实例;
  2. SQL类包含一个将查询转换为数据类的函数,从而以正确的格式将数据返回给函数类;
  3. Data类包含一个直接解析查询结果的方法,因此功能逻辑只需要调用解析。
  4. 选项1似乎是这种结构中最合适的。我写大型应用程序的经验相当有限,所以我想知道有经验的人如何思考这个问题。

1 个答案:

答案 0 :(得分:1)

有经验的人使用ORM(object relational mapper)为他们执行此操作 或者可能写一个封装数据库访问的data access layer并将data transfer objects传递给应用程序代码。

选项1感觉数据库正在流入应用程序。在大型应用中,关注点的分离非常重要 选项2听起来像是编写自己的数据访问层的开始 选项3将在了解关系数据库结构的情况下污染数据传输对象。

非常认真地考虑购买ORM 实体框架。 NHibernate的。亚音速。巨大的。小巧玲珑。有很多可供选择。最重要的是,这是一个已经由许多具有丰富经验的开发人员多次解决的问题。您可以利用他们的学习并加快您的发展。