2018年3月15日 星期四

[C#] SqlDataSource 不允許從資料類型 sql_variant 隱含轉換到 uniqueidentifier。請使用 CONVERT 函數來執行查詢。

在VS2010 Design介面設定SqlDataSource時,勾選從系統產生的預防資料同步修改時,產生的衝突 ASP.NET 代碼,當資料庫欄位為 uniqueidentifier 時,ASP.NET代碼產生:

<asp:Parameter Name="original_gid" Type="Object" />

此會造成

System.Data.SqlClient.SqlException    不允許從資料類型 sql_variant 隱含轉換到 uniqueidentifier。請使用 CONVERT 函數來執行查詢。

此時要把 Type="Object" 刪除,改成如下:

<asp:Parameter Name="original_gid" />

Refer:

http://www.blueshop.com.tw/board/FUM20041006161839LRJ/BRD200710311108001NI.html

https://dotblogs.com.tw/mis2000lab/archive/2010/11/03/uniqueidentifier_sqldatasource.aspx

沒有留言: