我有一个表格:
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以外,其余都为null。对于第二个查询,完全填充。你做错了什么?
Column
属性进行映射。不确定最佳替代方案是什么,但我建议首先尝试这个。 - stuartd