[交流]当GridView+SqlDataSource遇上UniqueIdentifier 0CSDN]

发布时间:2016-12-10 20:57:51 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"[交流]当GridView+SqlDataSource遇上UniqueIdentifier 0CSDN]",主要涉及到[交流]当GridView+SqlDataSource遇上UniqueIdentifier 0CSDN]方面的内容,对于[交流]当GridView+SqlDataSource遇上UniqueIdentifier 0CSDN]感兴趣的同学可以参考一下。

GridView是Microsoft visual studio.net 2005里的控件,由前一代的DataGrid发展而来,非常好用。 SqlDataSource也是.net中比前一代更强的数据源控件。 初级做法是,定义好SqlDataSource,让它成为GridView的DataSource,就可以显示数据; 进一步,定义DataSource的UpdateCommand与UpdateParameter,不用像.net 2002中那样另写MyDataGrid_ItemCommand之类的代码,就可以自动更新数据了。 具体步骤是,GridView会自动把Edit模式下的数据行的数据转化为SqlParameters中定义的对应Sql Paramter的值,然后执行SqlCommand里定义的Sql语句。 一切都很好,直到……如果使用UniqueIdentifier数据类型作为你的datakey。 uniqueidentifier类似GUID,是microsoft强烈推荐的primary key的数据类型选项(相反identity这样的int类型不被推荐)。但这时候.net将不能正确执行数据类型的转换。 这是一种常见类型的.net 2005+sql 2005的错误:同期推出应用项目开发工具与数据库,导致未能详细的进行测试。 解决方法也很简单,在SqlDataSource中,不要直接用 select MeetingId, MeetingDateTime, MeetingDesc from dbo.meeting 这样的sql语句,而改用 select cast(MeetingId as varchar(36)) MeetingId, MeetingDateTime, MeetingDesc from dbo.meeting 这样,.net部分就会按照varchar进行转换,而从varchar到uniqueidentifier,就由数据库负责了。

上一篇:50分求解,关于显示指定标识列值的问题,哪位老大帮帮忙 0CSDN]
下一篇:SQL Server 2005图书征选优秀译者 20CSDN]

相关文章

相关评论