1

我是 dapper 的初学者。我正在浏览代码并构建示例。但我在检索数据时遇到问题。我的代码如下

 Console.WriteLine("Reading Values");
            string readSatement = "select * from employee where Id=@Id ";
             IEnumerable<Employee> objEmp1 = con.Query<Employee>(readSatement,
                 new {
                     Id = empId
                 });

             var objEmp2 = con.Query(readSatement, new { Id = empId }); 

在此代码中,objEmp2 从 db 中检索传递的 id 的值。但是 objEmp1 为对象的属性提供空值。

员工类如下

 public  class Employee
    {

      public int EmpId { get; set; }
      public string EmpName { get; set; }
      public int EmpAge { get; set; }
    } 

代码有什么问题。

4

1 回答 1

2

您需要确保所有数据库列与您用于查询的类中的属性匹配,或者返回名称匹配的列。例如,在您上面的查询中,我相信您可能想这样写:

select Id as EmpId, otherColumn as Propertyname, etc.. from employee
where Id = @Id
于 2012-10-26T04:54:09.300 回答