我正在尝试将 PetaPoco 用于具有一些存储过程的项目。它们中的大多数都可以正常工作,但是,我们有几个存储过程需要一个 IntList,它是一个用户定义的表类型。
我还没有找到一种方法来做到这一点,我希望我只是错过了一些明显的东西。我目前的解决方法是将存储过程代码从 SQL 复制到一个字符串中,然后对我的 PetaPoco 数据库执行它:
public IEnumerable<UserComments> GetComments(IEnumerable<int> userIds)
{
using(var db = new Database(connection))
{
db.Fetch<UserComments>(new Sql("select UserId, Comment from Comments where UserId in (@0)", userIds);
}
}