我typed DataSets
用于访问数据,通过配置它们(本教程DataSet Designer
中解释了一般思想)。
对于每个表GetData()
,首先会自动创建一个方法。它返回DataTable
与数据库中的基础表具有相同模式(即列)的 a。如果现在我使用选项创建一个自定义方法'Add query'
,它应该只返回部分数据(比如六列中的三列),自动生成的方法返回的 DataTable 仍然包含六列,而其中三列不包含数据。
这有一个烦人的副作用,DataTable
例如当我将它绑定到 GridView(显然使用 ObjectDataSource)时,这些空列GridView
也会出现在其中,所以我必须手动删除它们。
另一个相关的问题是,如果我将来自另一个表的数据添加到相应的SQL-query
列(例如使用内部连接或子查询),相反这些列不会被添加到 GridView,尽管我可以在Boundfield
.
因此,如果这里有人尚未完全迁移到实体框架并且可以解释这种行为并帮助克服这些问题,我将非常感谢您的回答。先感谢您。
更新:
我的期望是找到DataTable
从我的 SQL 查询之上的数据集设计器创建的 get 方法中获取 a 的方法,这将在其架构中反映此查询的结果。在教程中,他们说该GetData()
方法为您创建并填充 DataTable 并将其作为方法的返回值返回。如此直观地为什么不使用匹配的字段创建一个新表。
所以我希望我做错了什么。或者我的期望是错误的,但是有人可以解释我,为什么。