我正在使用VB中的Visual Studio 2010为学校项目创建一个网站,我对此的了解不是最好的。我在编辑gridview的一行时遇到了问题。我有一个存储用户处方信息的表格,如:
通过将列的visible属性设置为false(用户不需要在每一行上查看行ID或用户名),我将网格视图连接起来,使得几列不可见。
然而,当我尝试编辑一行时,我点击“更新”时出现错误
由于表定义,不可见用户名列不能包含空值。
我假设因为数据已经存储,所以不存在任何空值,并且它只是不可见。但是,情况似乎并非如此。
如果我使用户名的列可见,一切正常。
所以我的问题是,是否可以编辑具有不可见列的行?或者,我是否必须使该列可见并使文本框成为只读,以便用户能够成功编辑行?
我解决了这个问题。它为update命令生成的代码是:
UpdateCommand="UPDATE [Prescriptions] SET [UserName] = @UserName, [Prescriptions] = @Prescriptions, [Dosage] = @Dosage, [TimesDaily] = @TimesDaily, [TimesWeekly] = @TimesWeekly WHERE [ID] = @ID">
删除[UserName] = @UserName
我现在可以使用不可见的用户名列编辑一行。