我刚刚开始使用 Visual Studio 进行开发(虽然这可以看作是一个更通用的语言问题),并且需要完成有关如何在代码中适本地将数据库实体/表与类相关联的设计答案.
目前,我创建了一个类,其属性或 iVar 直接对应于实体中的字段。
例如,当我要从表中获取所有“客户”时,我对数据库运行 Select all 语句,对于返回的每个结果行,我实例化一个新类对象,我在其中使用类的默认构造函数来设置实例变量。 (我真的希望有一个像 PHP 的 mysql-fetch-object() 这样的方法?)
然后我可以添加这些对象中的每一个来表示一个(客户的)列表并将其返回。
这似乎不是最好的方法。如果我要更改数据库架构,我也必须在类中反射(reflect)这些更改。
非常感谢。
最佳答案
听起来您正在寻找的是“对象关系映射器”,例如 Entity Framework 或 NHibernate。
Entity Framework 是 Microsoft 的解决方案,它是 .NET Framework 的一部分(不过对于最新版本 (4.1),您需要单独下载)。 NHibernate 是一个第三方库。两者都应该能够帮助您完成您正在尝试做的事情。
链接:
- Entity Framework :http://msdn.microsoft.com/en-us/data/aa937723
- NHibernate:http://nhforge.org/Default.aspx
关于c# - C#/VB.net中数据库实体和对象之间的抽象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7451618/