nHibernate从存储过程返回零记录

时间:2015-07-30 18:08:14

标签: c# sql-server stored-procedures nhibernate resultset

我必须在SQL中执行一个返回几行的存储过程,但我似乎永远无法在nHibernate中捕获结果。我已经让整个开发团队都无济于事。这是我的代码:

        var results = this.Session.CreateSQLQuery("EXEC qa.AdjustDates @VpGuarantorId =:VpGuarantorId, @DatePart =:DatePart, @Adjustment =:Adjustment")
            .AddScalar("IssueLevel", NHibernateUtil.String)
            .AddScalar("IssueMessage", NHibernateUtil.String)
            .SetParameter("VpGuarantorId", guarantorId)
            .SetParameter("DatePart", datePart)
            .SetParameter("Adjustment", adjustment)
            .SetResultTransformer(new AliasToBeanResultTransformer(typeof (IssueResult)))
            .List<IssueResult>()
            .ToList();

这是班级:

public class IssueResult
{
    public virtual string IssueLevel { get; set; }
    public virtual string IssueMessage { get; set; }
}

(P.S。 - SQL Profiler显示我们的应用程序正确调用proc并传递正确的参数)

1 个答案:

答案 0 :(得分:0)

嗯,这是一个在两个数据库中拥有相同SPROC并且不知道它的情况:代码正在访问一个数据库而我正在另一个数据库中测试我的查询。

对于这个愚蠢的问题感到抱歉,谢谢大家的回答。