【发布时间】:2013-12-19 14:31:19
【问题描述】:
我从一个具有许多领域的 POCO 类中发挥作用:
public class Call
{
public int Id { get; set; }
public string Customer { get; set; }
public int StatusId { get; set; }
public int UserAssignedToId { get; set; }
public string UserAssignedToName { get; set; }
}
但是我的存储过程返回不同的名称到上面的属性(在这种情况下,Id 是之前的:
- IdCall
- 身份状态
- IdUserAssignedTo
这是我用来执行存储过程的代码:
var call = conn.Query<Call>("CallSPName", new { IdCall = callId }, commandType: CommandType.StoredProcedure).First();
我如何指定一个映射来表示我希望我的存储过程映射中的“IdStatus”到我的 POCO 类中的“StatusId”以及“IdCall”到“CallId”等?
我无权更改存储过程,因为它们由 DBA 控制,并且旧的遗留系统正在使用它们,如果存储过程中的字段发生更改,它们会中断。
任何想法/想法表示赞赏。
【问题讨论】:
-
据我所知,dapper 没有任何映射支持,因此您必须使用 Automapper 或您自己的自定义映射来为您创建自己的映射......或者您可以更改属性以匹配存储过程中的属性?
标签: sql-server stored-procedures dapper