Dapper函数没有';t映射存储过程中的字符串值,但正确映射其他值
本文关键字:映射 字符串 其他 过程中 存储 函数 Dapper 存储过程 | 更新日期: 2023-09-27 17:53:08
我有一个存储过程,它以以下格式返回数据:
"CompanyId"|"MetadataId"|"Mnemonic"|"Short"|"format"|"MetaDataType"|"lngValue"|"decValue"|"charValue"|"dateValue"|"blnValue"|"sOrder"|"version"|"Type"|"SortOrder"|"createdDate"
唯一的字符串是Mnenomic
和Short
。SP还返回多行,这就是为什么我认为使用IEnumerable<MyClass>
是映射行的最佳方式。
我的数据映射类:
public class CreditDataReport
{
public int CompanyId { get; set; }
public int MetaDataId { get; set; }
public string Mnenomic { get; set; }
public string ShortDesc { get; set; }
public int format { get; set; }
public int MetaDataType { get; set; }
public int lngValue { get; set; }
public double decValue { get; set; }
public string charValue { get; set; }
public DateTime dateValue { get; set; }
public int? blnValue { get; set; }
public int SOrder { get; set; }
public int version { get; set; }
public int Type { get; set; }
public int SortOrder { get; set; }
public DateTime createdDate { get; set; }
}
以及调用我的SP并映射数据的方法:
public IEnumerable<CreditDataReport> GetCreditRecommendation(int reportId)
{
dynamic result = connection.Query<CreditDataReport>("cor_CreditRatioDataXXGetByReportId", new { ReportId = reportId },
transaction: this.transaction, commandType: CommandType.StoredProcedure);
return result;
}
我的问题是,当我调用像var testing = GetCreditRecommendation(2).ToList();
这样的函数并在运行时遍历代码时,我发现除了两个字符串值Mnenomic
和Short
之外,所有数据都正确地映射到了CreditReportData
类中的相应值。
我的代码中缺少什么?我是否以错误的方式使用dapper?
Mnemonic
!=Mnenomic
(仔细看(
Short
!=ShortDesc