成人午夜激情影院,小视频免费在线观看,国产精品夜夜嗨,欧美日韩精品一区二区在线播放

當GridView+SqlDataSource遇上UniqueIdentifier

2010-08-28 10:50:18來源:西部e網作者:

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,就由數據庫負責了。

原文地址: http://blog.csdn.net/athossmth/archive/2006/05/13/727355.aspx

關鍵詞:ASP.NET
主站蜘蛛池模板: 元氏县| 湄潭县| 东安县| 岑溪市| 德惠市| 南京市| 乡宁县| 紫云| 昭平县| 松滋市| 南江县| 古田县| 嵊州市| 错那县| 财经| 永安市| 邓州市| 柞水县| 新沂市| 丰顺县| 罗平县| 星子县| 商南县| 双鸭山市| 南昌市| 禹城市| 红原县| 济阳县| 南靖县| 普兰店市| 鸡泽县| 太仆寺旗| 景东| 安岳县| 托克托县| 天门市| 于田县| 东乌珠穆沁旗| 尖扎县| 佳木斯市| 临武县|