我有一个 ASPX 页面,其中定义了一个通过实体类绑定到 sql 数据库的 GridView 控件(通过 DataSourceID)。编辑行后,数据已正确更新,但已编辑行中的某些列现在为空。不为空的列显示更新的数据,数据实际上是在数据库中更新的。此外,即使在更新的行中显示为空的列,也会在数据库中正确更新。非空列显示更新数据的事实也证明了 GridView 在行更新后进行了数据绑定。为什么更新行中的某些列显示为空,这超出了我的理解...
更重要的是,如果我编辑另一行,新编辑的行现在显示为空的列与先前编辑的行显示为空的列相同。然后先前编辑的行现在显示所有列。
编辑:我刚刚发现只有当我在数据源上将deferredloadingenabled设置为 true 时才会出现此问题。对于那些不属于数据源中实体表的列,会发生这种情况。我可以通过创建视图来解决这个问题,但这确实效率低下。这意味着我需要为每个网格视图创建一个视图。