gpt4 book ai didi

c# - Dapper 产生不同的结果

转载 作者:行者123 更新时间:2023-11-29 11:36:32 25 4
gpt4 key购买 nike

我有一张 table :

create table scheduled_task
(
scheduled_task_id serial primary key,
description varchar(255),
predicate varchar(10485760),
path varchar(255),
scheduled_task_type_id int references scheduled_task_type (scheduled_task_type_id)
);

我的数据对象:

[Table("scheduled_task")]
public class DOScheduledTask
{
[Key]
[Column("scheduled_task_id")]
public long? ScheduledTaskId { get; set; }

[Column("description")]
public string Description { get; set;}

[Column("predicate")]
public string Predicate { get; set; }

[Column("path")]
public string Path { get; set; }

[Column("scheduled_task_type_id")]
public long? ScheduledTaskTypeId { get; set; }
}

我在表中插入了一条记录,它填充了所有字段。

我在代码中执行此操作:

var schedules = conn.Connection.Query<DOScheduledTask>("select * from scheduled_task ;");
var schedulesb = conn.Connection.GetList<DOScheduledTask>();

第一行产生一条记录,除了 scheduled_task_id 和 scheduled_task_type_id 之外的所有内容都是空的。对于第二个查询,它被完整填充。

我做错了什么?

最佳答案

问题是 .Query.GetList 来自两个不同的实现;一个来自Dapper,另一个来自SimpleCRUD .

解决方案是创建一个自定义映射器,因为列的命名在代码中与在数据库中不同。

关于c# - Dapper 产生不同的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58932872/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com