ORMLite将对存储过程的调用结果投影到模型上的实际要求是什么。我有一个具有一些属性的类,它不会正确映射sp的输出。如果我删除属性,那么它会正确映射它。例如:
public class Test
{
[Alias("InsuredId")]
public string Id { get; set; }
public string LastName { get; set; }
public string FirstName { get; set; }
public string MiddleInitial { get; set; }
}
SP返回以下列:InsuredId,LastName,FirstName,MiddleInitial等等。 如果我有Alias属性,则所有属性都填充为null。如果我删除属性,那么除Id之外一切都很好。以下是实际代码。
var test =
db.SqlList<Test>(
"EXEC up_InsuredSearchTest @ItemId, @FirstName, @LastName, @DateOfBirth, @Max_Search_Records",
new
{
ItemId = memberId,
FirstName = firstName,
LastName = lastName,
DateOfBirth = dateOfBirth.HasValue? dateOfBirth.Value.ToShortDateString() : "",
Max_Search_Records = MAX_SEARCH_RECORDS
});
答案 0 :(得分:2)
ServiceStack并不是真正的问题。返回的值是一个int但是被映射为字符串,它在ServiceStack中静默失败,但是记录了错误。错误不是很有用,所以我不得不通过ORMLite源调试来找出问题所在。