OrmLite:当使用属性时,执行存储过程并将结果映射到模型上不起作用

时间:2013-04-12 20:49:57

标签: servicestack ormlite-servicestack

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
            });

1 个答案:

答案 0 :(得分:2)

ServiceStack并不是真正的问题。返回的值是一个int但是被映射为字符串,它在ServiceStack中静默失败,但是记录了错误。错误不是很有用,所以我不得不通过ORMLite源调试来找出问题所在。