首页 > 解决方案 > 如何在 Dapper 中正确使用 SplitOn?

问题描述

我在 Dapper 上遇到了这个错误:

System.ArgumentException:'使用多映射 API 时,如果您有除 Id 参数名称以外的键,请确保设置 splitOn 参数:splitOn'

这是我的代码:

  public class DivisionModel
  {
    public int id { get; set; }
    public string DivisionName { get; set; }
  }

 public class EmployeeModel
 {
    public int id { get; set; }
    public string FirstName { get; set; }
    public string MiddleName { get; set; }
    public string LastName { get; set; }
    public DivisionModel Division { get; set; } = new DivisionModel();
 }



 public List<EmployeeModel> GetEmployee_All()
    {
        using (IDbConnection connection = new System.Data.SqlClient.SqlConnection(GlobalConfig.CnnString(db)))
        {

            var sql = @"SELECT em.LastName,em.FirstName,em.LastName,dv.DivisionName
                            FROM [Employee] em JOIN [Division] dv ON em.DivisionId = dv.id";

            var result = connection.Query<EmployeeModel, DivisionModel, EmployeeModel>(sql, (employee, division) =>
            {
                employee.Division = division;
                return employee;
            },
         splitOn: "DivisionId");


           return  result.ToList();
          
        }
    }

标签: c#dapper

解决方案


推荐阅读