使用PetaPoco中的参数调用存储过程

Tec*_*Xie 20 sql petapoco

我希望能够在PetaPoco中调用带有命名参数的存储过程.

为了调用执行搜索/获取的存储过程:

我可以这样做:

return db.Fetch<Customer>("EXEC SP_FindCust",
new SqlParameter("@first_name", fName),
new SqlParameter("@last_name", lName),
new SqlParameter("@dob", dob));
Run Code Online (Sandbox Code Playgroud)

另外,如何调用插入的存储过程?

return db.Execute("EXEC InsertCust @CustID = 1, @CustName = AAA")
Run Code Online (Sandbox Code Playgroud)

谢谢,Nac

Tec*_*Xie 26

更新:

我尝试了以下fetch和insert,它完美地工作:

var s = PetaPoco.Sql.Builder.Append("EXEC SP_FindCust @@last_name = @0", lname);
s.Append(", @@first_name = @0", fName);
s.Append(", @@last_name = @0", lName);
s.Append(", @@dob = @0", dob);
return db.Query<Cust>(s);
Run Code Online (Sandbox Code Playgroud)

这可以进一步改进以传递SQL参数.