我从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在之前:
这是我用来执行存储过程的代码:
var call = conn.Query<Call>("CallSPName", new { IdCall = callId }, commandType: CommandType.StoredProcedure).First();
我如何指定一个映射来表示我想从我的存储过程映射中将“IdStatus”改为我的POCO类中的“StatusId”,将“IdCall”改为“CallId”等?
我没有权限更改存储过程,因为它们由DBA控制,而较旧的旧系统正在使用它们,如果存储过程中的字段发生更改,它们将会中断。
赞赏任何想法/想法。
答案 0 :(得分:1)
最让我想到的是将私有属性映射到存储过程返回的列,并使用您想要设置的名称创建公共属性并获取这些私有字段:
// ...
private int IdStatus;
public int StatusId {
get { return IdStatus; }
set { IdStatus = value; }
}
// ...