c# – 创建一个与SQL数据库交互的类
我熟悉编程中面向对象的主要概念,目前我正在教自己如何设计类.
我有一个非常简单的类calld公司.这是我到目前为止的代码 using System; namespace Addressbook { public class Company { private string _companyId; private string _companyName; private string _companyType; private string[] _companyDetails; public Company() { } public string CompanyId { set { this._companyId = value; } } public string CompanyName { set { this._companyName = value; } } public string CompanyType { set { this._companyType = value; } } public string[] GetCompanyDetails() { return null; } } } 我现在要做的是实现一些方法,这就是我迷失的地方. 我想到的第一个方法是GetCompanyDetails(),它将从SQL数据库中收集数据然后显示它.可能在DataGridView或其他东西. 我的问题是我无法弄清楚应该如何编写这个方法.我是否将所有SQL查询和连接放在其中?或者我只是将它们的实例作为参数传递?我应该从方法中返回什么类型? 有人可以给我一些指导吗? 此外,如果您有关于此主题的任何优秀教程/指南的链接,请发布它们. 谢谢. 解决方法
请查看“数据源架构模式”部分中的模式:
http://martinfowler.com/eaaCatalog/index.html.虽然您最终可能最终会使用DataMapper / ORM路径,但您可能需要使用ActiveRecord模式.
在敏捷精神中,我会保持连接和事务管理最初非常简单.也许只是这个类中的私有函数.然后我会让每个方法在SQL或SP中定义它的查询并执行它并对结果做一些事情.这使数据访问逻辑在适当的位置保持在一起. 您可能希望将“getter”函数设置为shared / static,以便不需要实例.然后你可以这样写: var companies = Company.GetCompanyDetails(); 虽然超级简单,但这种方法可以让您继续前进,同时仍然可以扩展范围.一旦事情变得越来越复杂,这种方法将变得过于简单.此时,您需要扩展和重构,考虑更强大的连接/事务管理,对象创建和查询. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |