亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在 Dapper 中調用 QueryAsync 會拋出 System.Data.

在 Dapper 中調用 QueryAsync 會拋出 System.Data.

C#
蝴蝶刀刀 2023-12-17 10:01:25
我正在嘗試使用 Dapper 查詢 Sqlite 表,如下所示:CREATE TABLE "Running" (    "Id"    INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE,    "MachineName"   BLOB NOT NULL DEFAULT 'machine' UNIQUE,    "IsOnline"  INTEGER DEFAULT 0,    "TimesRan"  INTEGER DEFAULT 0,    "LoginDateTime" TEXT,    "LogoutDateTime"    TEXT,    "ForceUpgrade"  INTEGER NOT NULL DEFAULT 0,    "Version"   TEXT)目前在該表中我只有一條記錄:1DESKTOP-KQT7CGC 012019-09-21 03:04:10.0990672019-09-21 03:04:37.6825109 04.0.0var data = await _globalConfig.Connection.GetStatusAsync();    public async Task<List<ApplicationInfoModel>> GetStatusAsync()    {        using (IDbConnection cnn = new SQLiteConnection(ConfigurationManager.GetLocalOrSharedConnectionString(), true))        {            var output = await cnn.QueryAsync<ApplicationInfoModel>("select * from Running", new DynamicParameters());            return output.ToList();        }    }ApplicationInfoModel 看起來像這樣:public class ApplicationInfoModel{    public int Id { get; set; }    public string MachineName { get; set; }    public bool IsOnline { get; set; }    public int TimesRan { get; set; }    public DateTime LoginDateTime { get; set; } = DateTime.Now;    public DateTime LogoutDateTime { get; set; }    public bool ForceUpgrade { get; set; }    public string Version { get; set; }}我收到了 System.Data.DataException,其中包含消息 Error parsing column 1 (MachineName=System.Byte[] - Object)。有人可以幫助我理解為什么我應該在模型上實現IConvertible嗎?我嘗試僅針對 屬性實現 IConvertible,但它仍然引發相同的異常。MachineName
查看完整描述

1 回答

?
慕仙森

TA貢獻1827條經驗 獲得超8個贊

在這種特定情況下對象必須實現 IConvertible?內部異常意味著 Dapper 無法自動轉換您的MachineName?DB字段從數據庫類型?BLOB?到模型類型?string

您應該對?列使用數據庫類型?TEXT(這應該是正確的選擇),或者將其轉換為 SQL?正確地。像這樣:MachineNameselectTEXT

select?cast(MachineName?AS?TEXT),?IsOnline,?TimesRan,?LoginDateTime,?LogoutDateTime,?ForceUpgrade,?Version?from?Running

這兩個選項都應該可以解決您當前的問題(例外情況)。

查看完整回答
反對 回復 2023-12-17
  • 1 回答
  • 0 關注
  • 233 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號