簡體   English   中英

嘗試使用SubSonic將圖像存儲為字節數組時出錯

[英]Error while trying to store image as byte array using SubSonic

SubSonic是否提供任何機制來存儲圖像(以byte []格式轉換)?
有人可以幫助擺脫這個錯誤嗎?

數據庫:SQL Server 2005
開發環境:ASP.NET(c#)
亞音速版本:2.2.1.0

DB中的數據類型:圖像
Subsonic生成的DAL中的數據類型:DbType.Binary
代碼中的數據類型:byte []圖片

錯誤的陳述:

DB.Insert().Into(DamageItems.Schema, "ImageID", "Cost","Image").Values(imageID, cost,image).Execute();

監視窗口中的查詢表達式:

{INSERT INTO [dbo].[ImageItems](ImageID,Cost,Image)
 VALUES (@ins_ImageID,@ins_Cost,@ins_Image)
}

錯誤:

無法將參數值從Byte []轉換為String。

您可以嘗試以下方法:

DB.Insert().Into<DamageItems>()
    .Value(DamageItems.ImageIDColumn, imageID)
    .Value(DamageItems.CostColumn, cost)
    .Value(DamageItems.ImageColumn, image)
    .Execute();

指定TableColumn對象時,也許可以正確識別類型(編寫此代碼時目前無法測試)。

如果那不起作用,我還要檢查用數據類型名稱( image )命名列是否會引起任何問題。

順便說一句,從SQL 2005開始,不建議使用image ,建議改用varbinary(max)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM